V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
lixiangzhixin
V2EX  ›  git

[求助] Git 合并解决冲突疑问

  •  
  •   lixiangzhixin · 2022-11-17 10:03:59 +08:00 · 1887 次点击
    这是一个创建于 767 天前的主题,其中的信息可能已经有所发展或是发生改变。

    两个分支 fea ,master

    fea 往 master 合并,解决完冲突 push 时,会把 mater 的其他改动同步到 fea 分支上,有办法不同步这些吗?

    13 条回复    2022-11-17 19:04:56 +08:00
    bojackhorseman
        1
    bojackhorseman  
       2022-11-17 10:06:15 +08:00 via iPhone
    feat 往 master 合并不会把 master 的改动合到 feat 上啊,你不会是把 master 往 feat 合了吧
    gimp
        2
    gimp  
       2022-11-17 10:06:57 +08:00
    本地 fea 分支 rebase 一下 master 分支能不能行
    beichenshao
        3
    beichenshao  
       2022-11-17 10:08:46 +08:00
    两种方式,一种是改 gitlab 的配置,一种是在本地合并,push 后就没有这种问题了
    ration
        4
    ration  
       2022-11-17 10:09:02 +08:00 via Android
    不会同步啊
    lambdaq
        5
    lambdaq  
       2022-11-17 10:10:51 +08:00
    我猜你是 feat 和 master 区分了部分代码?
    qping
        6
    qping  
       2022-11-17 10:26:33 +08:00
    本地 checkout master, 然后 pull
    然后 merge fea 到 master , 解决冲突
    然后 push master
    lixiangzhixin
        7
    lixiangzhixin  
    OP
       2022-11-17 10:29:10 +08:00
    采用的 gitlab 的 merge request 合并的,会出现这种问题
    james2013
        8
    james2013  
       2022-11-17 10:50:33 +08:00
    那你可以从 master 拉取代码,建 1 个临时分支 master_temp,然后在本地 merge fea 分支,再把这个临时分支 push 到服务器,再在 gitlab 界面使用 merge request,将这个临时分支合并到 master,然后在 gitlab 和本地删除这个临时分支
    8Ri72kLA9ORo6m6f
        9
    8Ri72kLA9ORo6m6f  
       2022-11-17 10:50:54 +08:00
    我之前也出现类似的问题,不知道如何解决
    xuelu520
        10
    xuelu520  
       2022-11-17 11:01:48 +08:00
    应该是解决冲突的时候用上了 master 上的别人的代码块。

    merge 之前,先把 master 的合并一下到本地的分支,
    解决冲突后,代码变动都是在本地分支,再 merge 到 master
    xFrye
        11
    xFrye  
       2022-11-17 11:04:36 +08:00
    为啥不本地解决完了再 push 上去呢
    pkoukk
        12
    pkoukk  
       2022-11-17 18:54:40 +08:00
    gitlab 的 mr 是这样的,因为它的工作流方式默认当 fea 合并的 master 之后,这个 fea 的寿命就结束了,之后的修改应该开新的 fea
    你可以本地切到 master ,把 fea 往里合,合并完然后推上去
    waterlaw
        13
    waterlaw  
       2022-11-17 19:04:56 +08:00 via Android
    你流程错了,正确的流程是 先从 master 拉出一个新分支,mr/feat, 然后用这个分支去 merge feat
    分支,push 后,再提 mr/feat 到 master 的 merge request.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5848 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 480ms · UTC 03:15 · PVG 11:15 · LAX 19:15 · JFK 22:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.