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

git-解决与rebase vs merge的冲突

git
  •  0
  • j2emanue  · 技术社区  · 7 年前

    所以我工作的地方合并是不受欢迎的,而且是不被允许的。该团队希望使用git rebase来维护单一的历史流,并使其看起来是线性的。他们不希望看到合并提交。但我今天遇到了一个情况,不知道如何解决它。我当时正在开发一个名为featureBranchA的功能分支,我保存了我的更改,并进行了git pull origin开发,以从develop获得更改。变化来了,但有一个冲突(即使在藏匿之后!!)。它说:

    CONFLICT (modify/delete): myapp/src/main/java/com/myCompany/app/rubberBands/crayons/CrayonMarker.kt deleted in 258dcbfccba83025cd0c3e1e22212e980a481a and modified in HEAD. Version HEAD of myapp/src/main/java/com/myCompany/app/rubberBands/crayons/CrayonMarker.kt left in tree.
    

    所以很明显,我需要解决这一冲突才能继续前进。因此,我执行了以下命令,因为某些文件引用似乎需要更新(CrayonMarker.kt文件已被删除,但我的git认为它仍然存在):

    git add .
    git commit -m "merging to resolve conflicts"
    git stash pop
    

    我是否只运行:

    git rebase develop 
    

    那之后我该怎么办?提交更改?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Adam Bates    7 年前

    根据git文档:

    https://git-scm.com/docs/git-rebase

          A---B---C topic
         /
    D---E---F---G master
    

    从这一点开始,将显示以下命令之一的结果:

    git rebase master
    git rebase master topic
    

    将是:

                  A'--B'--C' topic
                 /
    D---E---F---G master
    

    它看起来像是从您的 develop