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

git rebase 是不是有可能丢 commit

  •  
  •   wynemo · 2014-09-24 21:49:53 +08:00 · 8496 次点击
    这是一个创建于 3709 天前的主题,其中的信息可能已经有所发展或是发生改变。
    多人用git还没多久 用的intellij自带的git 经常pull下来要rebase或者merge 我不想看到merge一直选的rebase 有时候发现之前已经push的提交被别人冲掉了这种是不是加个-p就可以避免
    第 1 条附言  ·  2014-09-24 22:43:50 +08:00
    不好意思 我没表述清楚 被冲掉的意思不是说log里看不到了 而是对方也在用rebase把我的提交过的东西又改回去了
    9 条回复    2014-09-25 18:51:42 +08:00
    dullwit
        1
    dullwit  
       2014-09-24 22:17:54 +08:00
    commit可以在reflog里查到。
    commit有被覆盖可以查看push是否被他人加-f执行强制非快进式推送,建议设置config receive.denyNonFastForwards true禁用非快进式推送,或者通过授权文件(钩子)设置特定用户可以执行非快进式推送。
    dullwit
        2
    dullwit  
       2014-09-24 22:58:21 +08:00
    已经推送到公共服务器git仓库的commit,强烈不建议rebase
    Lax
        3
    Lax  
       2014-09-24 23:08:45 +08:00
    不要在同一个分支上做开发。要做好分支合并管理,把开发分支的代码合并到主干,把代码从主干合并回开发分支,各种合并操作前先pull主干。
    Julyyq
        4
    Julyyq  
       2014-09-24 23:20:01 +08:00
    LZ记住一点:只要commit过的代码,都能找的回来。
    wynemo
        5
    wynemo  
    OP
       2014-09-24 23:22:18 +08:00
    @Julyyq 是的 但是比如之前已经修复过的bug 后面又出现了 文件被改回去了 很无语
    wynemo
        6
    wynemo  
    OP
       2014-09-24 23:24:37 +08:00
    @dullwit 这个原则我在git官网上也看到了 一直用intellij的git插件 没去用cgywin的git 也没有太留心inteillij的git日志窗口 不知道老出现提交过的东西又被改回去是什么个情况
    Julyyq
        7
    Julyyq  
       2014-09-24 23:55:02 +08:00
    @wynemo 肯定是你们团队中谁的git操作有问题,导致'代码又被改回去'的状况。其实使用merge留下merge branch的记录并不一定是坏事情,反而可以清晰的看清楚团队中每个人的提交记录,https://github.com/nvie/gitflow 这个著名的gitflow就是prefer merge合并而不是rebase合并。
    dullwit
        8
    dullwit  
       2014-09-25 00:05:13 +08:00   ❤️ 1
    @wynemo 就是查看是否被强制push,或者是别人解决合并冲突的时候出错了。
    @Julyyq 并不是那么绝对,更改commit的操作虽然有reflog记录,但是reflog默认保存90天。
    msg7086
        9
    msg7086  
       2014-09-25 18:51:42 +08:00
    @dullwit 建议好好研究一下gitflow。

    我正在用的smartgit里有一个gitflow的简化版,用起来差不多感觉。

    基本原理就像上面说的,fork branch做开发,功能做完测试好了merge回主线。分支如果要好看的话,merge之前先rebase本地再merge回主线。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2846 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:30 · PVG 08:30 · LAX 16:30 · JFK 19:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.