我对版本控制系统还有点新意。
目前我有两个分支:master
和develop
。昨天我正在开发分支,并意识到我所做的是错误的,所以我不得不切换回一些较旧的提交。
问题在于,在最近的提交中,我添加了几个新的单元测试并大大改进了一些关键的单元测试基础结构类,即使在重新使用旧版本后,我仍希望保留在我的项目中。承诺。
这让我意识到,从一开始我应该做的就是拥有一个与“项目相关”并且不一定与“当前特征”相关的所有功能相关的分支。我是对的吗?
你如何在日常工作流程中使用git来处理这些事情?
答案 0 :(得分:5)
我想向您推荐文章A successful Git branching model,它使用功能分支,开发分支,发布分支和hoxfixes来表示不同的目的。您可能感兴趣的另一个Git扩展是gitflow,它为文章中的分支模型提及提供了高级存储库操作。
答案 1 :(得分:3)
在这个特定情况下,我将从master中创建一个新的分支(名为ImproveUnitTests),然后在与您从开发中完成的主题相关的提交中挑选。然后,您可以轻松地将您的ImproveUnitTests合并回主人。
对于日常用品,我使用了很多分支机构。如果我正在开发featureX并且看到我需要修复其他内容,我将切换回我的主人并创建一个新的分支来修复那些东西。然后将我的“fixit”分支合并到master中,并将rebase featureX关闭。
答案 2 :(得分:1)
如果我说得对,你想恢复你的改变,但保留其中的一些。在那种情况下,我会切换到master和cherry选择好的更改(单元测试更改),然后只需还原开发分支并开心:)