建立和簽出新分支
要建立新分支,同時停留在當前分支上,請使用:
git branch <name>
通常,分支名稱不得包含空格,並且遵循此處列出的其他規範。要切換到現有分支:
git checkout <name>
要建立新分支並切換到它:
git checkout -b <name>
要在當前分支(也稱為 HEAD)的最後一次提交之外的位置建立分支,請使用以下任一命令:
git branch <name> [<start-point>]
git checkout -b <name> [<start-point>]
<start-point>
可以是 git 已知的任何修訂版本 (例如,另一個分支名稱,提交 SHA 或符號引用,例如 HEAD 或標記名稱):
git checkout -b <name> some_other_branch
git checkout -b <name> af295
git checkout -b <name> HEAD~5
git checkout -b <name> v1.0.5
要從遠端分支建立分支 (預設 <remote_name>
是原點):
git branch <name> <remote_name>/<branch_name>
git checkout -b <name> <remote_name>/<branch_name>
如果只在一個遙控器上找到給定的分支名稱,則可以使用
git checkout -b <branch_name>
這相當於
git checkout -b <branch_name> <remote_name>/<branch_name>
有時你可能需要將最近幾次提交移動到新分支。這可以通過分支和回滾來實現,如下所示:
git branch <new_name>
git reset --hard HEAD~2 # Go back 2 commits, you will lose uncommitted work.
git checkout <new_name>
以下是此技術的說明性解釋:
Initial state After git branch <new_name> After git reset --hard HEAD~2
newBranch newBranch
↓ ↓
A-B-C-D-E (HEAD) A-B-C-D-E (HEAD) A-B-C-D-E (HEAD)
↑ ↑ ↑
master master master