git 常用命令速查
git 中,默认的开发分支是 master 或者 main,origin 是远程版本库,下面列出一些常用的命令。
创建版本库
1
2
git clone <url> # 克隆远程版本库
git init # 初始化本地版本库
修改提交历史
1
2
3
4
5
6
7
8
9
10
11
12
13
git status # 查看状态
git diff # 查看变更内容
git add . # 跟踪所有改动过的文件
git add <file> # 跟踪指定的文件
git stash # 把当前修改了但未跟踪的文件保存到栈里
git stash pop # 把保存到栈里的修改了但未跟踪的文件弹出栈里
git mv <old> <new> # 文件改名
git rm <file> # 删除文件
git rm --cached <file>
# 停止跟踪文件但不删除
git commit -m "commit message"
# 提交所有更新过的文件
git commit --amend # 修改最后一次提交
查看提交历史
1
2
3
git log # 查看提交历史
git log -p <file> # 查看指定文件的提交历史
git blame <file> # 以列表方式查看指定文件的提交历史
撤销
1
2
3
4
5
git reset --hard HEAD
# 撤销工作目录中所有未提交文件的修改内容
git checkout HEAD <file>
# 撤销指定的未提交文件的修改内容
git revert <commit> # 撤销指定的提交
分支与标签
1
2
3
4
5
6
7
8
9
10
11
12
13
git branch # 列出所有本地分支
git branch -a # 列出所有分支,包括远程分支和本地分支
git branch <new-branch>
# 创建一个新分支
git branch -d <branch>
# 删除指定分支
git checkout <branch/tag>
# 切换到指定分支或者标签
git checkout -b <new-branch>
# 基于当前的分支创建一个本地的新分支
git tag # 列出所有本地标签
git tag <tagname> # 打标签
git tag -d <tagname> # 删除标签
合并与衍合(变基)
1
2
git merge <branch> # 合并指定分支到当前分支
git rebase <branch> # 衍合指定分支到当前分支
远程操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
git remote -v # 查看远程版本库信息
git remote show <remote>
# 查看指定远程版本库信息
git remote add <remote> <url>
# 添加远程版本库
git fetch <remote> # 从远程仓库获取代码
git pull <remote> <branch>
# 下载代码并合并到本地
git push <remote> <branch>
# 上传代码并合并到远程
git push <remote> :<branch/tag-name>
# 删除远程分支或标签
git push --tags # 上传所有标签
git push -u origin <branch>
# 把本地分支推送到远程分支(远程不存在此分支则创建)
本文由作者按照 CC BY 4.0 进行授权