【问题标题】:How can I update a git branch from another branch when there are files that do not share?当有不共享的文件时,如何从另一个分支更新 git 分支?
【发布时间】:2021-08-24 23:21:02
【问题描述】:

我有两个分支masterdocs。第二个在master 分支中有我不想要的文件,但是当我在master 中执行更新时,我想更新docs 分支而不更改其额外文件。

我尝试使用merge,但是由于docs 分支中的额外文件而失败。

你能帮我解决这个问题吗?

谢谢。

【问题讨论】:

  • 很可能在某些 git 命令上使用一些标志组合,但我想说 - 这是你没​​有使用 git "正确" 的标志(对你不利)。听起来docs 应该是一个文件夹,而不是一个分支。
  • 合并“失败”是什么意思?除非您的问题中没有包含某些内容,否则应该可以将 master 合并到 docs 中,尽管 docs 具有 master 没有的文件。
  • 我尝试合并时的错误是:Merging is not possible because you have unmerged files. hint: Fix them up in the work tree, and then use 'git add/rm <file>',并且只有当我删除额外的文件(或将它们添加到master)时,它才有效。
  • 该特定错误消息 (you have unmerged files) 表示您之前已开始合并,但尚未完成。在完成或终止之前的合并之前,您无法开始新的合并。
  • 你尝试过 rebase docs 吗?

标签: git github git-branch branching-and-merging


【解决方案1】:

master 分支覆盖docs 分支中的特定文件或目录对我有用。例如,假设directory_to_updatedocs 分支中较旧,我执行以下操作来更新(覆盖)它相对于master

$ git checkout docs
$ git checkout master directory_to_update

然后出现以下消息:Updated N paths from ...,并且文件已“更新”。

类似于https://stackoverflow.com/a/18115667/7749658中的答案

【讨论】:

    猜你喜欢
    • 2022-10-25
    • 2013-11-04
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2018-06-21
    • 2020-06-18
    • 1970-01-01
    相关资源
    最近更新 更多