代码之家  ›  专栏  ›  技术社区  ›  digitguy

Git-从两个分支合并“add”

  •  0
  • digitguy  · 技术社区  · 7 年前
    1. Branch1 Branch2 ,并在两个分支中添加了同名文件。说 Branch1\folder\file.txt Branch2\folder\file.txt
    2. 我合并 分支1 进入 分支2
    3. 我选择 分支1

    当我在中看到文件的历史记录时 分支2 我看到文件是“添加”的,而不是“修改”。我希望修改,因为文件已存在于 分支1

    这是故意的吗?有没有其他方法可以通过正确/期望的历史达到相同的结果?

    1 回复  |  直到 7 年前
        1
  •  1
  •   LightBender    7 年前

    与大多数其他版本控制系统不同,git不跟踪文件,而是跟踪内容。每次提交都是代码的一个大快照,这意味着您可以保证一点一点地准确地返回您输入的内容。我们用来组织和理解快照的文件数据更像是git模型中的元数据。

    当比较两个提交时,即使它们之间有30个提交,git也只会查看正在比较的两个提交。因此,当它看到内容被移动和修改时,需要一组规则来解释元数据。

    这是您描述的场景的示意图。(箭头从子项指向父项)

    enter image description here

    A > B : Added
    A > C : Added
    B > D : Modified
    C > D : Unchanged
    A > D : Added