【问题标题】:How to resolve Git conflicts from a merge request on Gitlab?如何从 Gitlab 上的合并请求解决 Git 冲突?
【发布时间】:2023-02-01 19:13:43
【问题描述】:

我想将我的分支 master 合并到 develop 中。

我的状态是:

合并受阻:必须解决合并冲突。

Gitlab 为我提供了一些帮助:

第 1 步。获取并检查此合并请求的功能分支:

git 获取来源 git checkout -b 'master' 'origin/master' 提示:您还可以使用合并请求 ID 签出。

步骤 2. 在本地查看更改。

步骤 3. 解决任何冲突。我该如何修复它们?

步骤 4. 将源分支向上推送到 GitLab。

git push origin 'master'

事实上,这些步骤都没有让我接触到本地冲突,所以我无法解决它们。

我也有疑问:git checkout -b 'master' 'origin/master',我的本地分支机构master已经存在(当然),那么他们为什么要使用-b选项?

我尝试使用 mr ID,但同样,拉动时没有冲突。

如何处理这个 MR 的冲突?

我按照 Gitlab 界面中的所有步骤进行操作,我也尝试了提示部分但没有成功。

【问题讨论】:

    标签: git gitlab


    【解决方案1】:

    您可以使用变基解决问题。如果您想将 master 与您当前的开发合并,那么您可以使用以下命令将 master 分支与开发合并

    git rebase -i origin master
    

    如果您在 master 和 development 分支中有相同的代码,您将遇到 marge 冲突,您可以查看 marge 冲突代码并编辑要保留的代码(master/development 代码),修复合并冲突后,您必须使用此命令将更新后的文件添加到 git

    git add .
    

    并使用此命令继续变基操作:

    git rebase -i continue
    

    完成 rebase 后,你必须强制推送到你的 git 仓库:

    git push -f
    

    希望您能成功解决问题。

    【讨论】:

    • 谢谢 !但这会更新 Gitlab 上的合并请求还是只是合并?我在合并请求上有一些 CI,但如果我通过代码合并,这将不会激活它
    • 当您使用更新的 master 分支重新设置 dev 分支时,它会将您的 master 分支代码与您的 dev 分支合并。因此,您将在开发分支中获得更新的主分支代码
    猜你喜欢
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 2018-01-30
    • 2018-08-04
    • 2020-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多