Subversion有--只记录合并,我如何在Git中做同样的事情?

Subversion有--只记录合并,我如何在Git中做同样的事情?,git,merge,Git,Merge,我有一个回购协议,其中“主”将朝某个方向发展,第二个分支“foo”将在几次提交中发散,然后跟踪所有后续对“主”的更改。当然,这都是出于选择 在Subversion中,即使未提交任何实际更改,您也可以执行--record-only合并以将事情标记为“合并已发生”。i、 e.这将更改附加到目标分支中目录的属性中的合并跟踪编号 我和……玩了一场 git合并--无提交主机 。。在我进行提交之前,我可能可以对其进行修补,但对于所讨论的部分更改(重命名,然后删除),这会将目标分支弄得一团糟 一定有更简单的方

我有一个回购协议,其中“主”将朝某个方向发展,第二个分支“foo”将在几次提交中发散,然后跟踪所有后续对“主”的更改。当然,这都是出于选择

在Subversion中,即使未提交任何实际更改,您也可以执行--record-only合并以将事情标记为“合并已发生”。i、 e.这将更改附加到目标分支中目录的属性中的合并跟踪编号

我和……玩了一场

git合并--无提交主机

。。在我进行提交之前,我可能可以对其进行修补,但对于所讨论的部分更改(重命名,然后删除),这会将目标分支弄得一团糟

一定有更简单的方法

  • 保罗

    • 这就是你要找的吗

      git merge --strategy=ours master
      
      我们的

      这将解析任意数量的头,但合并的结果树始终是当前分支头的树,有效地忽略所有其他分支的所有更改。它旨在取代分支机构的旧发展历史

      这似乎就是您所要求的——它创建了一个合并提交,实际上并没有引入任何更改


      但你真的想这么做吗?有什么原因不能让分支实际分离(不发生合并)然后稍后合并吗?

      Paul,git可以轻松地处理重命名和删除(相对于svn)。它跟踪的是内容而不是文件名。在svn中,这将是痛苦的,您在使用git时遇到了哪些问题?

      jefromi解决了它。这里是真实的情况-(玩交换机分支,看看第65行)


      这与其说是“扔掉历史”,不如说是使用Git来处理来自单一基础的不同变化。为了让人们采用JBehave(IMO),我们需要让示例真正易于遵循。在这个“Trader”示例之前,JBehave vanilla+Guice变体+SpringFramework变体+PicoContainer变体都在同一个源目录中。现在,四个分支机构可以说明“交易员”示例的最典型表示。

      p.S.我发誓这是我在上周第三次提到
      --strategy=ours
      。我想知道为什么每个人都突然需要扔掉历史…我正在更改分支上的数据库配置文件,就在分支点之后,不想将它合并回master。不过,稍后分支上的bug修复后,我确实希望合并回master。这将允许,无需cherry单独选择修复提交。在执行上述操作时,我突然想到,此数据库信息确实属于环境变量,就像在12因素应用程序中一样。我需要这样一个示例:-在main和DevBranch工作的团队需要我构建一个功能-我构建所述功能,将其合并到main和DevBranch中-稍后,发现我构建的内容在没有其他当前仅在DevBranch上可用的内容的情况下发生了微妙的错误-我需要支持我对main的更改,但我最终想要一个状态,在这个状态下,以后的DevBranch可以合并到main中,然后我的特性将返回到解决方案中:从最后一个“main”提交合并到DevBranch中创建DevB2。在DevB2上恢复我的功能,将(通常)合并到main中,并将--strategy=ours合并到devbranch中抱歉,但链接已断开