当前位置:  开发笔记 > 开发工具 > 正文

什么是"Checkout with Rebase"然后在Intellij IDEA中推送合并文件的正确方法

如何解决《什么是"CheckoutwithRebase"然后在IntellijIDEA中推送合并文件的正确方法》经验,为你挑选了0个好方法。

在Git中,我有两个分支:master和myFeatureBranch(我在主人的时候通过IDEA的新分支创建).自从我创建myFeatureBranch以来,其他团队成员已经对master进行了多次更改.我想引入这些更改,我知道我会发生合并冲突.

我对如何处理这个问题的一般想法是:

我从master获得所有提交并将它们应用到我的分支

我处理任何合并冲突

我将所有这些更改(包括合并文件)推送到远程分支

我的远程分支上没有重复的提交

Intellij IDEA 2016 增加了一些新功能,包括Checkout with Rebase.从他们的公告:

与结帐衍合结帐,然后调整基线:如果你不想当你做两个操作你的时间浪费在多余的文件同步和编译的动作是很有用的.

听起来像我想要的.我已经在掌握了,所以我点击IDEA窗口右下角的分支选择器.我导航到我当地的分支机构并选择"Checkout with Rebase".

使用Rebase进行Intellij IDEA Checkout

这样做之后,我被告知我的合并冲突.我选择"合并"按钮并手动解决它们.

Intellij IDEA合并冲突

在我这样做之后,我得到了确认我的rebase成功了:

Intellij IDEA Rebase成功

并且没有待定的更改:

Intellij IDEA无法更改

一切看起来都有效.现在我想将所有内容(包括我的合并类)推送到我的远程分支.所以我进入菜单栏并选择VCS - > Git - > Push.但是当我这样做时,我得到一个错误,说我的推送被拒绝了,我应该合并:

推送当前分支<code> myFeatureBranch </ code>被拒绝. 在推送之前需要合并远程更改. 在这种情况下,强烈建议使用**merge**,因为存在非推送的合并提交. 重新定位它们可能会导致问题.

我决定按照建议选择"合并".但是,这让我回到合并冲突.

Intellij IDEA合并冲突

如果我经历这个,然后尝试再次推动它,它是成功的,但我结束了两个合并的副本.

我对这个"Checkout with Rebase"错误地做了什么,然后推送我的合并文件?

另外,我不想在终端上这样做.对于一些开发人员来说这可能更容易,但我想学习如何通过IDEA GUI完全完成它(我们有QA和其他用户不像我们的开发人员那样技术,他们表示不希望使用命令行,我想知道最好的方法).

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有