V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
fangwenxue
V2EX  ›  问与答

git 合并冲突

  •  
  •   fangwenxue · 2023-03-30 11:20:31 +08:00 · 1639 次点击
    这是一个创建于 602 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • master -> 本地分支 a -> a_fix1 -> merge test -> 解决完冲突

    • 本地分支 a -> git checkout a_fix 文件(将 a_fix1 修复号的文件放到 a) -> commit

    • a -> a_fix2 -> merge test

    • a_fix2 还是有冲突

    • 这是哪出了问题,test 是从远程拉回来的,包含了所有人提交的代码, 现在服务器测试环境合并我的 a 分支一直冲突

    13 条回复    2023-03-30 14:52:14 +08:00
    privatetan
        1
    privatetan  
       2023-03-30 11:26:40 +08:00
    建议整一个 a_test 分支,用于解决完冲突后合并到 test 环境
    iyiluo
        2
    iyiluo  
       2023-03-30 11:31:13 +08:00
    没看懂,你负责的 a 分支在提交前先同步最新的代码,在本地解决好冲突再提交。可能 a 分支的代码已经不是最新的
    fangwenxue
        3
    fangwenxue  
    OP
       2023-03-30 11:31:32 +08:00
    @privatetan test 远程分支没有权限
    fangwenxue
        4
    fangwenxue  
    OP
       2023-03-30 11:35:02 +08:00
    @iyiluo

    我有 b a 分支 都是基于 master 的,都改了同一个文件, test 先 merge 了 b
    a 是新开发的分支,没有 b 的代码

    这时候 test 再 merge a 就冲突

    我解决冲突是 a 上面弄了临时分支 去合并 test 解决完冲突 在把解决完冲突的文件 放到 a a 在提交

    但 test merge a 还是冲突
    lixile
        5
    lixile  
       2023-03-30 11:58:52 +08:00
    。。。你为什么会以为文件一致就不会冲突
    git 记录是基于改动的
    你应该把 master 上关于 a_fix 文件的修改 commit id 用 cherry-pick 到 a 分支上
    CEBBCAT
        6
    CEBBCAT  
       2023-03-30 12:54:51 +08:00
    git log --oneline --graph --decorate --all
    pls
    fangwenxue
        7
    fangwenxue  
    OP
       2023-03-30 13:54:31 +08:00
    @lixile
    现在是 test merge a 冲突了,master 是正常的
    test 里面包含了很多正在测试的分支代码
    如果用 cherry-pick 到 a 那 a 就有 test 代码,a 上线的话就把 test 还不能上线的代码搞到线上了
    lixile
        8
    lixile  
       2023-03-30 14:04:25 +08:00
    @fangwenxue 你们 commit 不是按功能或者按组件划分的? 无论是 test 还是 master 目前仅需要部分 a_fix 文件的改动
    仅需要 cherry-pick 这部分改动 不会引入其他的
    如果你们 commit 本身就是混乱的 那当我没说
    privatetan
        9
    privatetan  
       2023-03-30 14:15:13 +08:00
    @fangwenxue 不需要有 test 分支的权限,用你开发分支 merge test 分支 解决冲突后 push 到新的 a_test 分支就好了
    fangwenxue
        10
    fangwenxue  
    OP
       2023-03-30 14:25:12 +08:00
    @privatetan 公司有个运维系统,分支功能提测后,就不能变了
    我可以 push 到 a_test 但运维系统 test 不会合并 a_test 只会合 a
    fangwenxue
        11
    fangwenxue  
    OP
       2023-03-30 14:25:53 +08:00
    @lixile 几十号开发,每天的 commit 数不清。乱的很,各种代码呗合并没了
    privatetan
        12
    privatetan  
       2023-03-30 14:47:27 +08:00
    @fangwenxue 提 pr 将 a_test 合到 test 也不行么
    fangwenxue
        13
    fangwenxue  
    OP
       2023-03-30 14:52:14 +08:00
    @privatetan 只能合到本地 test 远程不行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1172 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 18:11 · PVG 02:11 · LAX 10:11 · JFK 13:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.