Git合并单个文件而不重定基址

Git合并单个文件而不重定基址,git,merge,git-merge,git-rebase,Git,Merge,Git Merge,Git Rebase,我有三个分支(让我们称它们为master、testing和feature)。这三个都是共享的,因此我无法在不给其他人带来问题的情况下对其中任何一个进行重新设置。目前,所有三家分支机构都存在分歧(没有一家是快进的),因此最终需要进行一些合并,因为重新定基不是一种选择 不过,就目前而言,我想将Makefile从测试中拉入feature,因为feature是从master中分离出来的,Makefile是在测试中添加的。但是,我不想在这两个分支之间合并任何其他更改 我的理解是,如果我只是将Makefil

我有三个分支(让我们称它们为master、testing和feature)。这三个都是共享的,因此我无法在不给其他人带来问题的情况下对其中任何一个进行重新设置。目前,所有三家分支机构都存在分歧(没有一家是快进的),因此最终需要进行一些合并,因为重新定基不是一种选择

不过,就目前而言,我想将Makefile从测试中拉入feature,因为feature是从master中分离出来的,Makefile是在测试中添加的。但是,我不想在这两个分支之间合并任何其他更改

我的理解是,如果我只是将Makefile添加到feature中,当我将feature合并回testing(然后是master)时,这将导致合并冲突,特别是如果我在feature分支中对Makefile进行任何进一步的添加

我可以做吉特樱桃采摘;然而,在测试中有多个提交到Makefile,我认为有一种比尝试将所有这些提交挑选到特性中更好的方法。

您只需执行一个

git签出分支机构名称

这可以加载特定文件,但也可以使用通配符和目录

请注意:

  • 路径是相对的
  • 该路径使git不会切换分支,因此您可以在获取文件后提交

Wow-我使用签出切换到SHA提交,并在文件上还原回HEAD,但我不知道可以通过这种方式将两者结合起来。现在回想起来,这是相当明显的,但谢谢!