我对 Git 版本控制不太熟悉。我阅读了本指南,并遵循图中此处所示的基本方法。尽管如此,我对如何使用 Git 分支将新功能的开发与现有代码分离还是有一些疑问。
这是一个例子。假设一开始,我的存储库包含以下两个主要分支:
当我需要开发新功能或模块时,我从 Develop 创建分支并在那里启动新的代码项目。例如,我创建了三个新分支来添加与
Sun
、Star
和 SuperNova
相关的功能。现在,我的存储库包含五个分支:
对于版本 1.0.1,我想包含
Sun
和 Star
模块,但不包含 SuperNova
。因此,我将它们与开发合并,然后将开发与发布合并:
需要永久保留 Develop 分支,但不再需要
Sun
和 Star
分支。他们被删除了:
这些更改之后,我的存储库包含以下三个分支:
==
首先,我是否正确使用了 Git 分支?
其次,我回顾了最后一个Develop分支的历史,似乎我丢失了一些关于
NewModules
的信息。这正常吗?还有,是否可以将所有历史信息转移到Develop分支?
我是否正确使用了 git?
是的,您描述的工作流程几乎是标准工作流程。您创建一些分支,对其进行处理,完成后合并它并删除不需要的分支(除非您要继续在该分支上进行开发)。
删除分支后,查看历史记录,在我看来,我 丢失了有关分支本身的所有信息...这正常吗?
是的,这是正常的。
是否可以删除分支但保留历史信息 完好无损?
不知道你在这里的意思。只要您在删除分支之前合并了该分支,历史记录仍然存在。您刚刚将其合并到另一个分支中,并且可以在该分支上看到历史记录。如果这是您所要求的,则无法知道分支何时被删除。
我建议您阅读成功的 Git 分支模型,它定义了 Git 分支的良好模式。
我发现我将开发分支保留一段时间,直到时间使您在这些修订中所做的更改历史记录不值得保留(大约六个月),然后删除它们。