Git分支基础
2016-03-20 18:39
507 查看
Git的精华是分支管理,那就来学习下Git的分支。
当初始化一个git仓库默认只有一个分支master
括号master表明当前所在分支,git中有一个HEAD的指针某个时刻只指向一个分支,查看.git下的HEAD文件就会发现指向的为master分支。
Git分支的意义何在,master分支是主分支默认是软件的主要版本,一般进行改动都不会在master分支上进行,当要改动时需要在master分支的基础上创建一个新的分支出来,在新的分支上进行改动适当的时候再和主分支进行合并,这样可以保证在分支上进行任何的改动不会影响到master分支,在多人开发中每个人在自己的分支上完成自己的工作这样整个团队就可以很好的进行协同开发。首先在master分支下新建文件Gitjava.java
在master分支上提交gitcommit –m “master分支新增文件Gitjava.java”
完了后新建分支newb 并切换到该分支上gitcheckout –b newb
现在查看.git下的HEAD会发现HEAD指向了newb分支
然后再该分支上对Gitjava.java进行修改
现在在newb分支上提交gitcommit –a –m “newb分支上进行了改动”
来看下newb分支进行的改动对master分支有何影响,切换回master分支gitcheckout master
只要一切回master分支就是提示Gitjava被修改
重新加载会发现Gitjava.java回到了没有增加后面两条输出语句的状态
并且发现此时查看log发现只有master分支上的提交记录
而又切回newb分支发现两次提交记录都有。
假设newb分支上进行的修改确保无误后就可以和master分支进行合并,前提是要在master分支上进行git merge newb
之后Gitjava.java就是newb分支上进行改动后的文件了。
通过Git的这种分支的模型可以方便很多事情,实际中还有专门用于实现某些特性的分支,有测试的分支或建议更新的分支等等。
当初始化一个git仓库默认只有一个分支master
括号master表明当前所在分支,git中有一个HEAD的指针某个时刻只指向一个分支,查看.git下的HEAD文件就会发现指向的为master分支。
Git分支的意义何在,master分支是主分支默认是软件的主要版本,一般进行改动都不会在master分支上进行,当要改动时需要在master分支的基础上创建一个新的分支出来,在新的分支上进行改动适当的时候再和主分支进行合并,这样可以保证在分支上进行任何的改动不会影响到master分支,在多人开发中每个人在自己的分支上完成自己的工作这样整个团队就可以很好的进行协同开发。首先在master分支下新建文件Gitjava.java
在master分支上提交gitcommit –m “master分支新增文件Gitjava.java”
完了后新建分支newb 并切换到该分支上gitcheckout –b newb
现在查看.git下的HEAD会发现HEAD指向了newb分支
然后再该分支上对Gitjava.java进行修改
现在在newb分支上提交gitcommit –a –m “newb分支上进行了改动”
来看下newb分支进行的改动对master分支有何影响,切换回master分支gitcheckout master
只要一切回master分支就是提示Gitjava被修改
重新加载会发现Gitjava.java回到了没有增加后面两条输出语句的状态
并且发现此时查看log发现只有master分支上的提交记录
而又切回newb分支发现两次提交记录都有。
假设newb分支上进行的修改确保无误后就可以和master分支进行合并,前提是要在master分支上进行git merge newb
之后Gitjava.java就是newb分支上进行改动后的文件了。
通过Git的这种分支的模型可以方便很多事情,实际中还有专门用于实现某些特性的分支,有测试的分支或建议更新的分支等等。
相关文章推荐
- RPC failed; result=22, HTTP code = 411
- git更新已經刪除的文件
- 提取Git每次提交后Commit的文件
- GIT迁移服务器
- 分布式版本管理git入门指南使用资料汇总及文章推荐
- git终极指南:在实际开发中的应用
- 简单谈谈node.js 版本控制 nvm和 n
- VSS 软件配置管理 版本控制第1/2页
- Git远程操作详解
- 25个 Git 进阶技巧(翻译)
- 详解版本控制利器Git,SVN的异同以及适用范围
- 使用svn进行版本控制
- Ruby实现的删除已经合并的git分支脚本分享
- 在 Shell 提示符中显示 Git 分支名称的方法
- Git使用基础篇(一些常用命令和原理)
- git fork同步是什么意思?
- Git使用小坑 Out of memory错误的解决方法
- Python的高级Git库 Gittle
- 使用GIT进行源码管理――GUI客户端小结
- 使用git代替FTP部署代码到服务器的例子