1.创建一个新branch
git branch branch_name
切换到某一分支(HEAD指针指向某一branch)
git checkout branch_name
git checkout -b branch_name 相当于上面两条命令的合并,即创建一个新分支,并
切把head指针指向新分支。
2.git branch -a 列出当前有哪些branch,并表明哪个是工作branch
3.git branch -d branch_name 删除某个分支
4.git merge branch_name 合并某个branch到当前branch
如果发生冲突可以用git status 查看哪些文件冲突
打开文件能看到冲突标记。
修改被冲突标记标记的地放,然后git add
之后git commit
5.git branch -v 显示所有分支最后提交信息
6.git branch --merger 显示哪些branch已经合并到当前branch
7. git branch --no-merged 显示哪些branch还没有合并到当前branch
不能删除当前没有合并的branch,因为还没有合并。还有存在的必要。不过用-D 可以强制删除。
8.分支式工作流程
1.可以同时拥有多个开放的分支,每个分支用于完成特定的任务
2.随着开发的推进,你可以随时把某个特性分支的成果合并到其他分支中。
3.一般,仅在master分支中保留完全稳定的代码,即已经发布或即将发布的代 码。
4.同时还一个名为develop或者next的平行分支,专门用于后续的开发,或者仅用于稳定性测试。一旦相对稳定就可以merge到master。同样可以有各种issue 分支,解决完了之后就可以并入master
5.topic 分支(特性分支):短期的,用来实现单一特性或相关工作的分支。
6.不过这些分分合合都是在本地分支,下面谈远程分支。
7.remote branch,远程分支是对远程仓库状态的索引。
举例说明。假如团队有个地址为git.ourcompany.com 的Git服务器,如果从这里clone,Git会自动为你将此远程仓库的名字命名为origin,并下载其中所有的数据,建立一个指向他的master分支的指针,在本地命名为origin/master。但你无法在本地更改其数据。接着Git建立一个属于你自己的本地master分支,始于origin上master分支相同的位置,你可以就此开始工作。
也就是说,第一次clone会同时建立你的本地分支master和远程分支origin/master,他们都指向origin/master分支的最后一次提交。
8.可以用git fetch origin来同步,改名了首先找到origin是哪个服务器,从上面获取本地没有的数据,然后更新本地数据库,然后把origin/master 的指针移动到他的最新位置。