我和老板争论过与Git合作的方式。
我编写了一个Jenkins管道,每隔5分钟轮询一次SCM,如果推送到相关分支,则触发构建。
为了测试它,我创建了一个名为itai_test的新分支,签出了它,创建了一个名为itai.txt的新文件,提交并推送。
测试进展顺利...... Jenkins对SCM进行了调查,发现了变化并触发了构建...正如预期的那样。
当我确定我对测试结果感到满意时,我已经运行git log
,在我的测试提交之前找到了最后一次提交的SHA,恢复了该提交并推动了力变化为原点。
现在,当我告诉我的老板时,他很生气,并告诉我永远不要改变git的历史...这是没人做的事。
因此,举例来说,我问他对挤压的看法,他也说了同样的话......"这不是正确的工作方式"。
我认为这是一个方法问题,而不是一个正确或错误的事情,但我不像Git那样经验丰富。
那么请你分享一下你的方法吗?
答案 0 :(得分:0)
想象一下这两个场景。为了明白这一点,它们可能是夸大其词。
这些只是为什么通常的两个小例子,源代码最终有一个规范的最终存储库,而仅附加,你不能重写历史。
(这只是常识“回到当天”。对于DVCS这些天来,可能会有一些“宗教”的分歧,我认为我们不需要进入那个......其他不同意的人可以礼貌地陈述他们的案例。)
但是,如果这对贵公司来说很重要,那么不应该留给“你不应该这样做”的可选规则。它应该在git服务器端强制执行,因此根本不可能。