gpt4 book ai didi

Git merge 冲突解决显示我没有做的分阶段更改

转载 作者:太空狗 更新时间:2023-10-29 13:22:03 27 4
gpt4 key购买 nike

假设以下场景。

  1. 我克隆了一个中央 git 存储库并检查了 master 分支。
  2. 我在本地存储库的 master 分支中做了一些更改并提交。
  3. 其他人在master分支做修改,提交并推送到中央仓库
  4. 我尝试将中央仓库的 master 分支 pull 到我的。
  5. 发生 merge 冲突。

然后,如果我发出 git status 命令,我会看到很多我没有做的更改(我认为是其他人在第 3 步中完成的)会自动暂存到下一个 merge 提交,我将在解决冲突后执行此操作。

我的问题是,在冲突解决和提交之后,上述已暂存但并非由我完成的更改是否会像我完成的一样进入 repo 协议(protocol)?

最佳答案

每次进行 merge 时,都会创建一个提交。进行 pull 实际上是获取和 merge 操作(除非您正在快速转发)

当 merge 成功且没有任何冲突时,您会看到直接提交(假设您没有快速转发)。但是当发生冲突时,git 将冲突中的文件留在冲突状态。所有其他成功 merge 的文件都放在暂存区。因此,当您完成冲突后,您可以将所有文件一起提交。

此提交被标记为 merge 提交,将来阅读历史记录的其他人应该确定此提交是由 merge 引起的,而不是由您所做的更改引起的。

关于Git merge 冲突解决显示我没有做的分阶段更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29104307/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com