【问题标题】:Pulling Just One Folder from One Branch to A Different Branch Git仅将一个文件夹从一个分支拉到另一个分支 Git
【发布时间】:2020-07-12 16:34:34
【问题描述】:

我有两个分支 A 和 B, B是从A分支出来的

从那时起,A 和 B 都发生了不同的变化

我想知道 git 命令只将一个文件夹从 A 移动到 B 而不拉任何其他更改

【问题讨论】:

    标签: git github


    【解决方案1】:

    How do I merge changes to a single file, rather than merging commits?基本上是同一个问题,但是很多答案都是错误的。

    我修复/改进了一些更好的解决方案。

    • 要合并更改并获取提交(如果您稍后合并 A 和 B,这将导致重复提交,可以通过 rebase 避免):
      git checkout B
      git format-patch --stdout ..A -- <path> | git am -3
      
    • 要在不提交的情况下合并更改,请使用this answer (be aware A and B is swapped) 或这个更简单的解决方案:
      git checkout B
      git diff ...A -- <path> | git apply
      # stage changes and commit
      
    • 用 A 中文件的版本覆盖 B:
      git checkout B
      git checkout A -- <path>
      # commit
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-23
      • 1970-01-01
      • 1970-01-01
      • 2020-06-03
      • 2022-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多