github 分支管理
最近有同事问我git 如何管理分支,这里我以github为例,做下工作中常用的分支管理操作。
分支管理
作用:假设你准备开发一个新功能,但需要两周才能完成,第一周写了60%,如果提交,由于代码还没写完,不完整的代码库会导致别人不能干活,如果等代码全部写完在一次提交,又会存在丢失每天进度的风险。有了分支,可以避免上述问题,创建一个属于自己的分支,别人看不到,还继续在原来的分支上正常工作,而我们在自己的分支上干活,想提交就提交,直到开发完毕后,在一次性合并到原来的分支上,这样,即安全又不影响别人工作。
特点:Git分支是与众不同的,无论创建、切换、和删除分支,Git在非常短的时间内就能完成,无论版本库是1个文件还是1万个文件。
master主分支:在版本回退中,每次提交,Git都把它们串成一条时间线,在git里,这个分支叫主分支,即master分支,HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。每次提交,master分支都会向前移动一步,这样,随着不断提交,master分支的线也越来越长。
git常用命令
实际应用
实际使用过程中本人使用pycharm git插件进行操作,操作如下:![](https://img2018.cnblogs.com/i-beta/1213900/201911/1213900-20191126144143204-139794423.png)
![](https://img2018.cnblogs.com/i-beta/1213900/201911/1213900-20191126144326779-783425437.png)
删除远程分支
![](https://img2018.cnblogs.com/i-beta/1213900/201911/1213900-20191126144456844-1852731970.png)
可以在github 上看到只有一个分支了
创建分支
如图,创建并切换分支
查看当前分支
每次开发前要pull 一下最新代码,防止代码提交时冲突
说明当前是最新代码
现在开始编写代码,并提交。
提交前记得也要先pull 一下。
如图,添加一行注释
本地运行没问题后 可以进行 push
push 本地 dev 到远程 dev
如图提示push 成功!
可以在 github 查看变化
接下来可以将dev merge 到 mester
1、可以直接在github 上进行操作
查看代码变动,并 create pull request
如图,提示没有冲突可以合并分支
点击 merge pull request (合并请求) 即可完成dev 到 master的合并。
2、也可以直接通过pycharm 或是命令执行合并
通过pycharm 首先切换分支到本地master
切换前的代码
切换后的代码,没有最新代码
merge changes
因为我们Dev的 已经提交的远程dev 所以这里 选择远程dev
如图提示 merge 1 item
这里可以看到 master 分支上也有了最新的代码
最后选择 push
最后可以看到 push成功
最后去github 查看不会再有 合并分支的请求了
查看远程也能看到 最新的提交记录了
此时 就可以删除 dev 分支了,后续可以 再次新建分支进行开发任务的开发