原作者文章地址:https://git-scm.com/book/zh/v2
创建分支
git branch <branchName>
git checkout -b <branchName>
创建并且切换分支
$ git branch test1
$ git checkout -b test2
Switched to a new branch 'test2'
M readme.md
$ git branch
master
test1
* test2
分支切换
$ git checkout test1
Switched to branch 'test1'
M readme.md
查看各个分支当前所指对象
$ git log --oneline --decorate
8727432 (HEAD -> test1, tag: v0.2, git-test/master, test2, master) rm txt
c70394a (tag: v0.4, tag: v0.3) first commit
当前head指向test1, 当前test1,test2,master分支指向 8727432 的提交对象
项目分叉历史
经过两次分支提交:
$ git log --oneline --decorate --graph --all
* e11b0cb (HEAD -> test2) teste red
| * 460f911 (master) readm
|/
* 8727432 (tag: v0.2, git-test/master, test1) rm txt
* c70394a (tag: v0.4, tag: v0.3) first commit
合并分支
git merge <name>
分支管理
- 查看每一个分支的最后一次提交
git branch -v
- 看哪些分支已经合并到当前分支
git branch --merged
- 查看所有包含未合并工作的分支
git branch --no-merged
变基
git checkout test2
git rebase master
git ckeckout master
git merge test2
网友评论