1. 创建与合并分支
1. 每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支
2. 截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即 master 分支
3. HEAD 严格来说不是指向提交,而是指向 master,master才是指向提交的,所以,HEAD指向的就是当前分支
Git 鼓励大量使用分支:
git branch // 查看分支
git branch <name> // 创建分支
git checkout <name> // 切换分支
git checkout -b <name> // 创建+切换分支
git merge <name> // 合并某分支到当前分支
git branch -d/-D <name> // 删除分支 d:普通删除,修改后没有合并不能删 D:强制删除
2. 分支管理策略
合并分支时,加上--no-ff
参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward
合并就看不出来曾经做过合并。
注意:使用
--no-ff
合并时会自动创建一个新的commit
,所以要加上-m
并写上描述
3. Bug分支解决办法
当手头工作没有完成时,先把工作现场 git stash
一下,然后去修复bug
,修复后,再git stash pop
,回到工作现场
注意:
git stash
命令不会存储下列文件:
- 工作区中新增的文件(
untracked files
)- 被版本库忽略的文件(
.gitignore
中定义的)
如果想要存储untracked files
,可以使用git stash -u
网友评论