Git - merge 到未更新的分支

标签 git merge git-merge git-pull

假设我有两个分支,一个具有新功能,另一个具有测试功能。

我想在测试分支中 merge 新功能。问题是我的本地测试分支版本没有更新最新的更改,我忘记在 merge 新功能之前更新它。

发生的事情如下:

  • Git 将新功能 merge 到我本地版本的测试分支中。
  • 当我推送 merge 时,发生了与另一个 merge 类似的事情,我认为是远程更改。

我认为在推送期间发生了 merge ,因为现在我的测试分支中有远程更改。

是否有可能或发生了其他事情?

我现在的情况是我不确定测试分支中到底有什么。基本上我不知道这个错误涉及什么。

我不确定我是否完全理解发生了什么,所以我想请你更好地理解发生了什么以及我如何解决我的疏忽。

最佳答案

  • local test 没有更新remote test 分支时。比如说,本地测试包含提交A远程测试包含提交A & B

    local test:  A
    remote test: A -> B
    
  • feature 分支与 local test merge 。比如说,功能包含提交 P

    local test:  A -> P
    remote test: A -> B
    
  • 如果你想推送本地测试,你应该会遇到类似your test branch is behind origin/test这样的错误。

  • 远程测试 pull 入本地测试分支。

    $ git pull origin test
    
    local test:  A -> B -> P
    remote test: A -> B
    
  • 推送本地测试

    local test:  A -> B -> P
    remote test: A -> B -> P   
    

关于Git - merge 到未更新的分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40927882/

相关文章:

python - 合并 pandas 中超过 50% 匹配的两个 df 列表字符串列表

python - 在两个索引(日期时间和日期)上合并两个具有部分公共(public)元素的不相等数据帧

git - 如何管理与 xlsx(二进制)的 Git merge 冲突?

Git fetch 不更新 origin/master

git - 在 Github 中 merge pull 请求时触发 Jenkins 构建

Python:根据多个值+总和合并n个字典

Git 忽略剩余的 merge 冲突

git - 我如何确定哪些提交导致冲突?

git - 为什么 checkout 不同的分支后仍然存在未暂存的更改?

Git:提交一个标签,然后将提交 merge 到 master