我对GIT版本控制很陌生。我读了Guide,并遵循图HERE中显示的基本方法。不过,我对如何使用git分支从现有代码中分离新功能的开发方面存在一些疑问。如何正确使用git和分支
这里是一个例子。假设在一开始,我的库包含以下两个主要分支:
- 主分支(含发行版)
- 开发分公司(包含新的修补程序或功能,以他们现有的项目设有独立的)
当我需要开发新功能或模块时,我从Develop创建分支并在那里启动新的代码项目。例如,我创建了三个新分支以添加与Sun
,Star
和SuperNova
相关的功能。现在,我的存储库包含五个分公司:
- 主分支:1.0.0版本
- 开发分支:修改后的版本1.0.0
- NewModule_Sun分支:孙添加到项目(从开发分支创建)
- NewModule_Star分支:添加超新星计划(从开发分支创建)
对于版本1.0.1,我想包含Sun
和Star
模块,但不包括SuperNova
。所以,我把它们合并与开发,然后合并与发行开发:
- 合并NewModule_Sun到开发
- 合并NewModule_Star到开发
- 合并发展成为硕士(发布1.0.1)
开发分支需要永久保存,但不再需要Sun
和Star
分支。他们被删除:
- 删除NewModule_Sun分支
- 删除NewModule_Star分支
后,这些更改我的库包含以下三个分支:
- 主科:1.0版。 1
- 开发分支:发布后的修改1.0.1
- NewModule_SuperNova分支:版本1.0后的修改。0,我在正确使用Git分支
==
首先(从当它不与星/孙分支合并开发创建的)?
其次,我回顾了最后的开发分支的历史,似乎我已经失去了对NewModules
一些信息。这是正常的吗?而且,是否有可能将所有历史信息传输到Develop分支?
谢谢!
这可能会有帮助。 http://stackoverflow.com/questions/2613903/does-deleting-a-branch-in-git-remove-it-from-the-history – codef0rmer 2012-04-04 10:36:24