2012-08-16 66 views
0

如此简要的故事我正在管理某个应用程序的某些代码的GIT回购。该应用程序没有任何测试。其中一名开发人员将一个功能分支直接合并到主控中,Jenkins将其部署到舞台上。这个功能分支有数周的变化,并且被分成几个主分支。所以我从假期回来,发现一些功能被破坏,并添加了没有准备好用于黄金时段的功能。我设法通过恢复合并和提交来梳理糟糕的代码。 我想运行这个固定的代码库,并手动测试它的废话。 PM希望将现场直播并将其放入GIT回购中。 这似乎是错误的。有没有人有任何其他解决方案或意见?经过多次糟糕的合并后管理GIT回购

+1

您介绍一下梳理出后的内容不确定,只是用'git的差异主release'看到区别,如果任何与调查。 – kan 2012-08-16 21:36:09

+0

等一下,有没有不在回购活动中的变化? – willoller 2012-08-18 01:08:02

回答

1

我不明白下午要做什么。

尽管我相信一个“维护良好”的Git仓库每个功能都有一个分支,包括修复,一旦它稳定并通过测试,它就会合并。

我知道并想象要坚持到底有多难。所以我想你现在拥有的是一个回购,你不知道任何提交可能代表什么,因为它是混乱的,你添加回复(个人认为应尽可能避免回复)。

所以你想有一些稳定的东西?即使我没有经验,我也会建议从历史上的一个稳定承诺开始。从它分支并称之为“稳定”,这将成为您的主要分支。从引入新功能或错误的提交中连续合并。对于每个提交修复,直到它稳定并重新绑定到下一个错误提交之前进行修复。

例如,前:

A(稳定) - B(特征1,窃听) - C(特征2,更窃听) - d(差)

后:

A - 乙 - B1 - B2 - C - C1 - D - D1

(使A,B2,C1,D1是稳定的里程碑)。总的来说,你可以玩转基因,合并和樱桃选择来执行你想做的事情。这篇文章:Git Cherry-pick vs Merge Workflow告诉你,如果你对其他人不舒服,你最好使用merge,但是有一些非常有用的区别。

希望你会解决你的问题