Git是一个优秀的代码版本管理工具,其常用命令包括但不限于以下这些:
一、初始化与配置
- git init:在当前目录初始化一个新的Git仓库。
- git clone [url]:克隆远程仓库到本地。
- git config:配置Git的各种选项和变量,如设置用户名和邮箱等。
二、工作区与暂存区
- git status:显示工作区和暂存区的状态。
- git add [file]:将指定文件添加到暂存区。使用"git add ."可以添加当前目录下的所有文件。
- git rm [file]:从工作区和暂存区中删除文件。
- git mv [file-original] [file-renamed]:重命名文件,并将这个改名放入暂存区。
- git diff:显示工作区与暂存区或本地仓库之间的差异。
三、提交与日志
- git commit -m "message":提交暂存区的文件到本地仓库,并附带提交信息。
- git commit --amend:修改最后一次提交的信息或内容。
- git log:显示提交日志。可以通过添加参数如"-p"显示每次提交的差异,"--stat"显示每次提交变更的文件,"--oneline"将每次提交压缩成一行显示等。
- git show [commit]:显示某次提交的详细内容。
四、分支与合并
- git branch:列出本地分支,或创建、删除分支。
- git checkout [branch]:切换到指定分支,或恢复工作树文件。
- git merge [branch]:合并指定分支到当前分支。
- git rebase [branch]:将当前分支变基到指定分支。
五、远程仓库
- git remote -v:显示远程仓库的详细信息。
- git fetch [remote]:从远程仓库拉取最新变更,但不自动合并到本地仓库。
- git pull [remote] [branch]:拉取远程分支并合并到本地分支。
- git push [remote] [branch]:将本地分支推送到远程仓库。
- git remote add:添加一个新的远程仓库。
- git remote rm:移除一个远程仓库。
六、标签
- git tag:列出标签,或创建、删除标签。
- git show [tag]:显示某个标签的详细信息。
七、其他高级命令
- git stash:暂存当前工作区的修改。
- git cherry-pick [commit]:选择并应用某个提交的更改。
- git bisect:用于二分查找引入bug的提交。
- git grep [pattern]:在代码库中搜索指定模式。
- git submodule:管理子模块。
- git reflog:查看引用日志,用于恢复误删除的提交或分支。
- git clean:从工作区中移除未跟踪的文件。
- git shortlog:根据作者将提交整理成摘要。