Cheat Sheet速查表
跳转到主要内容

Git 分支管理 速查表

本文根据 Devhints / Git branches 翻译。代码示例及版本范围沿用原文。原文标注更新日期:2020-02-13。

使用分支

创建

git checkout -b $branchname
git push origin $branchname --set-upstream

在本地创建新分支,然后将其推送到远程。

从远程获取

git fetch origin
git checkout --track origin/$branchname

获取远程仓库中的分支。

删除本地远程跟踪分支

git remote prune origin

删除 origin/* 本地副本中的分支。不会影响远程仓库。

列出现有分支

git branch --list

列出所有现有分支。当前分支会以星号标记。

列出已合并的分支

git branch -a --merged

列出已合并到当前分支中的旧分支。

删除本地分支

git branch -d $branchname

仅当分支中的更改已推送到远程并完成合并后,才删除该分支。

强制删除分支

git branch -D $branchname
git branch -d $branchname

说明:也可以用 -D 替代 -d;-D 等同于 —delete —force,会强制删除分支,无论该分支是否已经合并。

删除远程分支

git push origin --delete :$branchname

也适用于标签(tag)!

获取当前的 SHA-1 哈希值

git show-ref HEAD -s

重置分支并移除所有更改

git reset --hard

撤销提交,回退到指定的提交版本

git reset --hard $commit_id

# Now push safely to your branch
git push --force-with-lease

# Or push brutally to your branch
git push --force