V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
diveIntoWork
V2EX  ›  程序员

关于 git auto merge 的一点思考

  •  
  •   diveIntoWork · 2017-09-30 10:37:37 +08:00 · 4871 次点击
    这是一个创建于 2405 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在进行 git pull 操作的时候,能够合并的文件一般 git 会 auto-mergeing,有些有冲突的文件会报出冲突。但是比如说,A 君在文件中增加了一段代码,我本地 pull 下来的时候,导致我的代码失败了,这段代码也不属于 conflict,如果工程特别大的话,也比较难排查。这种情况该如何处理? 还是应该少用 pull,用 git fetch + git diff 排查这种问题?

    8 条回复    2017-09-30 14:21:20 +08:00
    GeruzoniAnsasu
        1
    GeruzoniAnsasu  
       2017-09-30 11:37:16 +08:00
    pull 完 diff 一下前后版本
    用 gui 工具 diff,头别太铁
    ryd994
        2
    ryd994  
       2017-09-30 11:50:51 +08:00
    fetch rebase 也是一派
    mdzz
        3
    mdzz  
       2017-09-30 12:58:33 +08:00
    本地开发另开 branch
    xi_lin
        4
    xi_lin  
       2017-09-30 13:18:51 +08:00
    @ryd994 rebase 就是 commit 数目多的时候如果一路 conflict 下来太酸爽,别的都好
    exch4nge
        5
    exch4nge  
       2017-09-30 13:30:38 +08:00
    1. 同意 @mdzz 本地开发另开 branch
    2. 多测测,能有单元测试更好,能有 CI 跑单元测试那就更好了
    msg7086
        6
    msg7086  
       2017-09-30 13:31:26 +08:00
    一般我们只考虑 rebase pull。merge 严重污染分支结构,pull 一时爽,blame○○场。
    skydiver
        7
    skydiver  
       2017-09-30 13:32:40 +08:00
    本地开发另开 branch,定期 merge master,merge 之后跑 test
    momocraft
        8
    momocraft  
       2017-09-30 14:21:20 +08:00
    在已知本地分支有更新时 pull 其 remote tracking 分支, 最好情况是多一个我不想要的 commit, 最坏情况时要手动清理 worktree 然后再 reset

    所以我只在已知本地没更新时 pull
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2253 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 04:50 · PVG 12:50 · LAX 21:50 · JFK 00:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.