赞
踩
Git是一个功能强大的版本控制系统,它提供了一系列的命令来帮助开发者进行日常的版本控制操作。以下是一些常用的Git命令及其简要介绍:
git init
: 初始化一个新的Git仓库。git config
: 配置Git的设置,如用户名、邮箱等。git add <file>
: 将指定文件添加到暂存区。git rm <file>
: 从暂存区和工作目录中删除文件。git mv <old> <new>
: 移动或重命名文件。git status
: 查看当前工作目录的状态。git log
: 查看提交历史。git reflog
: 查看所有HEAD的变动记录,用于恢复丢失的提交。git diff
: 查看工作目录和暂存区或HEAD之间的差异。git commit
: 提交暂存区的更改到仓库。git commit -m "message"
: 提交并添加提交信息。git commit --amend
: 修改最后一次提交。git branch
: 列出所有本地分支。git branch -a
: 列出所有分支(本地和远程)。git checkout <branch>
: 切换到指定分支。git switch <branch>
: (Git 2.23+)切换到指定分支。git branch -d <branch>
: 删除本地分支。git tag
: 列出所有标签。git tag <name>
: 创建一个新的标签。git clone <url>
: 克隆远程仓库到本地。git remote
: 显示远程仓库的简写名和URL。git remote add <name> <url>
: 添加远程仓库。git fetch
: 从远程仓库获取所有分支的最新状态。git pull
: 拉取远程分支的更改并合并到当前分支。git push
: 推送本地分支的更改到远程仓库。git push -u origin <branch>
: 推送本地分支到远程仓库,并设置上游分支。git merge <branch>
: 将指定分支的更改合并到当前分支。git rebase
: 将当前分支的更改移植到另一分支上。git reset
: 重置当前HEAD到指定的状态。git reset --hard
: 重置HEAD并丢弃所有更改。git reset --soft
: 重置HEAD,但不更改索引和工作目录。git reset --mixed
: (默认)重置HEAD和索引,但不更改工作目录。git revert <commit>
: 创建一个新的提交,撤销指定提交的更改。git merge --abort
: 中止当前的合并操作。git rebase --abort
: 中止当前的衍合操作。git submodule add <url>
: 添加子模块到仓库。git submodule update
: 更新所有子模块。git clean
: 清除工作目录中未跟踪的文件。git stash
: 临时存储未提交的更改。git stash pop
: 恢复之前存储的更改。git bisect
: 二分查找引入错误的提交。git show
: 显示提交、标签或分支的信息。git diff --staged
或 git diff --cached
: 比较暂存区和上一次提交之间的差异。git diff <branchA> <branchB>
: 比较两个分支之间的差异。.gitignore
: 一个配置文件,用于指定Git应忽略的文件或目录模式。git add -i
或 git interactive-add
: 进入一个交互式暂存界面,可以逐步添加更改。git apply <patch>
: 应用一个补丁文件。git am
: 将邮件格式的补丁应用到仓库中。git submodule foreach <command>
: 对所有子模块执行指定的命令。git push <remote> --delete <branch>
: 删除远程分支。git push <remote> --tags
: 推送所有标签到远程仓库。git remote rename <old> <new>
: 更改远程仓库的名称。git remote remove <remote>
或 git remote rm <remote>
: 删除远程仓库的引用。git branch -r
: 列出所有远程跟踪分支。git branch -vv
: 显示本地分支和远程跟踪分支的最新提交。git flow
: 一个使用Git的分支工作流工具,帮助管理复杂的开发过程。git config --list
: 列出所有配置项。git help <command>
: 显示指定命令的帮助信息。git gc
: 清理仓库,优化性能。git prune
: 修剪未使用的对象,减少仓库大小。pre-commit
: 提交前运行的脚本。post-commit
: 提交后运行的脚本。pre-push
: 推送前运行的脚本。post-receive
: 接收推送后运行的脚本。git archive <branch> | tar -x
: 从Git仓库中导出特定分支的文件。git shortlog
: 显示提交历史的概要。git whatchanged
: 显示仓库的变更日志。git submodule update --remote
: 更新子模块到其远程仓库的最新状态。git submodule foreach --recursive
: 在所有子模块及其子子模块中递归执行命令。git worktree add
: 添加一个新的工作树,允许在不同分支间轻松切换。git worktree prune
: 清理未使用的工作树。git alternate-refs
: 管理替代引用,用于创建可以合并回来的实验性分支。git show-ref
: 显示所有引用和它们的目标。git update-ref
: 更新引用到特定的commit。git bundle
: 创建一个包含多个分支和标签的包,方便传输。git ls-remote <remote>
: 列出远程仓库的引用和它们的哈希值。git clean -d
: 清除工作目录中的未跟踪目录。git gc --prune=<date>
: 清理老旧的无需打包的对象。git remote show <remote>
: 显示远程仓库的详细信息。git branch -r --sort=-creatordate
: 按创建日期排序显示远程分支。git fsck
: 检查数据库的完整性。git count-objects
: 显示对象数据库的统计信息。git am -3
: 应用补丁,对每个电子邮件消息创建一个提交。git format-patch
: 生成一系列补丁文件。git merge -s ours
: 合并时采用当前分支作为主分支。git merge -s recursive
: 使用递归策略合并分支。git reset --soft
: 回退到指定的状态,但不撤销工作目录中的更改。git reset --mixed
: (默认)回退到指定的状态,并重置暂存区,但不改变工作目录。git config --global alias.<name> <command>
: 创建自定义别名以简化命令。.git/hooks/
目录下创建自定义脚本,这些脚本会在特定的Git事件发生时自动运行。.gitconfig
: 全局配置文件,位于用户的主目录下。.gitmodules
: 管理子模块的配置文件。git rebase -i <commit>
: 交互式变基,允许你修改、删除、压缩或重新排序commit。git cherry-pick <commit>
: 应用一个特定的commit到当前分支。git diff-tree <commit1> <commit2>
: 显示两个commit之间的差异。git branch -u <remote>/<branch>
: 设置上游分支,使得git pull
和git push
可以直接使用。git reset HEAD <file>
: 撤销暂存区的更改,但不改变工作目录。git restore <file>
: 撤销暂存区的更改,恢复工作目录的更改。这些命令和概念覆盖了从日常使用到高级维护的各个方面,可以帮助你更深入地理解和使用Git。随着你对Git的不断学习和实践,你将能够更加熟练地运用这些工具来优化你的工作流程。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。