在我的团队中,我们正在试验这个“功能分支”的概念。它与子功能有关,有些功能可以进一步分解为相互依赖的子任务。是否有可能在git中显示多个不必要的连续提交的差异? (git diff A..B,但省略了一些提交)
我想要的是在分支上看到来自多个提交的压缩差异。
某种git的日志输出的示例:
提交哈希,作者,注释
1234, John, TASK-123 made the button red
4121, Susan, TASK-321 made the bar green
3322, John, TASK-123 made the button work
4412, Susan, TASK-321 made the bar work
我愿意看到的diff只为那些提交其注释中包含“TASK-123” ,以便我可以准确地看到有关这一项任务的变化。 (当然,这个任务的承诺与作者约翰的承诺是一致的)。所以过滤工作的确切方式有点不相关,我只想看看那些提交的变化 - 假设他们没有改变相同的行。
这是可能以某种方式?我知道我可以查看差异的连续提交git diff commit1..commit2
....但我想要的是基本上过滤掉一些提交范围。
声明:我们可能会做这件事情的错误,并可能有一个更好的方式做到这一点 - 如果有,并且你可以解释/提供文件,请做。我们之所以这样做是因为我们可以在我们的测试环境中更轻松地发布 - 再一次,如果您对如何做到这一点有更好的想法,我完全公开。
'git show'? –
ElpieKay
@ElpieKay我需要看到来自多个提交组合的差异。你所写的只显示1次提交的差异。如果我编写'git show commit1 commit2 commit3',那么我会看到连接的输出3'git show'命令。不是我想要的 - 我想在一个文件中使用3种不同的差异,而不是在3个文件中使用一种差异(假设我在同一个文件中做了3次更改) –
为什么每个任务都没有功能分支?在你的例子中,我看不出为什么来自不同任务的提交会被推入另一个任务。如果我在TASK-123上工作,在完成任务之前我不应该推动我的提交,对于开发TASK-321的开发人员也是如此。除此之外,我建议不要在一项任务中推送多个提交,而应使用本地功能分支,并在推送之前压缩提交。 – sp1nakr