gpt4 book ai didi

GitHub: merge 后更改提交

转载 作者:行者123 更新时间:2023-12-02 14:55:59 26 4
gpt4 key购买 nike

好吧,这很愚蠢,我不明白我在这里遗漏了什么:

  1. 有一个存储库,我是唯一的开发人员。
  2. 我创建了一个分支,对其进行处理,进行一次提交 (adb0ce3),将其推送,然后向 master 创建一个 pull 请求。
  3. 我去 GH,去 PR,在提交 View 中检查提交。提交 (adb0ce3) 就在那里。一切都好!
  4. 我的同事只是 merge 了 PR。
  5. 我转到主分支的提交 View 。有一个提交消息与我的提交消息相同,指向我的 PR,具有我所做的确切差异/更改。但问题是提交 ID 不同 (de5db73),当然当我尝试同步我的本地存储库时,git 提示

    warning: `rad-branch' was deleted on origin, but appears not merged into master

  6. 当我检查网络图时,我的分支还没有 merge (我恢复了我的分支)! network graph

我不知道这里发生了什么。 AFAIK 没有强制 push 或类似的东西。据我了解,它应该是一个简单的快进 merge 。它不时发生在我身上。有人知道可能是什么问题吗?

更新:据我所知,没有 squash 或类似的东西。结果是 PR 与 squash merge 了!

最佳答案

GitHub 实际上根本不运行 git merge。他们不能,因为 GitHub 上的存储库没有工作树。这并不是答案的真正重要部分,但意识到 GitHub 不使用普通的 Git 命令将帮助您获得正确的心态:GitHub 网页上的按钮并不像普通的 Git 命令那样。

GitHub 所做的是运行道德上等同于 git merge --squashgit rebasegit merge --no-ff . 如果接受并 merge 您的 pull 请求的用户调用最后一个请求,您的 提交哈希将保持不变,并且他们还会添加 merge 提交以实现此目的。但是,如果接受并 merge 您的 pull 请求的用户使用其他两个操作之一,您的提交将被(或多个提交)丢弃。相反,他们添加了他们自己的 commit(s),这与你的相似,但不同。在这种情况下,您的提交不会 merge ,您必须丢弃自己的提交并切换到他们的提交。 (他们对 GitHub 接受 pull 请求的人来说不是 super 友好,但这是你的选择。)

关于GitHub: merge 后更改提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52849531/

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