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

常年使用 git 的你们一般如何规范 commit 和 push 的频率?

  •  
  •   LioMore · 2015-09-21 21:12:21 +08:00 · 12490 次点击
    这是一个创建于 3352 天前的主题,其中的信息可能已经有所发展或是发生改变。

    以前不懂这些的我经常就是git commit -m 'modified xxx'
    然后立刻马上git push

    后来发现这样项目动态的页面会有很多推送到分支的记录,一个 commit 一条记录,不是很美观

    请问 如何规范 commit 和 push 的频率才能让团队查看项目动态的时候更加舒心且可读性高呢

    21 条回复    2023-08-25 10:36:32 +08:00
    ibcker
        1
    ibcker  
       2015-09-21 21:14:44 +08:00
    稳定了就 push
    nino
        2
    nino  
       2015-09-21 21:18:38 +08:00
    你自己的 repo 开发的时候随意 push 没关系, pull request 之前用 rebase -i 整理好 commit
    LioMore
        3
    LioMore  
    OP
       2015-09-21 21:20:11 +08:00
    我希望能有一个对何时 push 有个清晰的定义,以规范团队中的 push 行为
    FrankFang128
        4
    FrankFang128  
       2015-09-21 21:25:38 +08:00 via Android
    这个看人 怎么规范都没用
    ShadowStar
        5
    ShadowStar  
       2015-09-21 21:30:26 +08:00 via iPad
    push 和 commit 没有必然关系
    commit 通常应该按照功能 /模块 /修正来
    push 应该及时
    gzxultra
        6
    gzxultra  
       2015-09-21 21:31:22 +08:00   ❤️ 1
    How to Write a Git Commit Message
    http://chris.beams.io/posts/git-commit/
    weifengzi2009
        7
    weifengzi2009  
       2015-09-21 21:40:39 +08:00
    我是干一件小事 commit 一次,然后一个任务完成了 push 一下
    Wangxf
        8
    Wangxf  
       2015-09-21 21:42:08 +08:00
    我用 git2 个月了,反正功能实现了,我测试没问题了就 push ,有时候强迫症犯了空格没对齐也 push 了
    lavadore
        9
    lavadore  
       2015-09-21 21:53:11 +08:00
    反正都是自己开一个分支出来,随便怎么弄,最后合并前整理下就行了
    timothyye
        10
    timothyye  
       2015-09-21 21:54:50 +08:00
    开发分支随便 push
    发布版本用另外一个分支,发布的时候再合并……
    sinxccc
        11
    sinxccc  
       2015-09-21 22:03:32 +08:00
    尽可能快的 commit ,本地不要留太久未跟踪的代码,最多最多不要超过一天。

    能编译通过,能通过 smoke test 的时候就可以 push ,如果觉得功能修改比较大会影响 feature 的时候就开新 branch ,然后约定满足什么条件的时候可以 merge 。
    Kilerd
        12
    Kilerd  
       2015-09-21 22:04:28 +08:00
    完成一个功能就 commit 一次。

    完成一次任务 就 push 一次。
    ddou
        13
    ddou  
       2015-09-21 23:31:10 +08:00
    1. 完成了一个独立功能或改了一个 bug , push 一次。功能较大的话,完成一个模块也可以。
    2. 每次 push 确保本地测试完全通过
    3. 如果本地提交记录较多,比较乱,建议 push 之前,本地先 git rebase -i, 可以合并多个提交,修改提交顺序,以及更改 commit message 。
    4. 涉及多分支开发合并的,尽量 rebase 后,在 merge ,确保 commit history 清晰
    5. 多 push ,避免本地代码丢失,前功尽弃
    df4VW
        14
    df4VW  
       2015-09-21 23:55:58 +08:00
    推到自己的 branch 上多频繁都无所谓啊,要合并的时候再 squash pick 下美化下 commit 记录就好了
    sudoz
        15
    sudoz  
       2015-09-22 09:40:48 +08:00
    master 分支只给小组长或项目负责人, dev 分支随便提交,等测试合格了合并到 master
    wubotao
        16
    wubotao  
       2015-09-22 10:41:52 +08:00
    用 git commit --amend
    实在不行 squash 一下就可以了。
    otakustay
        17
    otakustay  
       2015-09-22 12:02:05 +08:00
    尽可能多地 add
    以可运行为节点 commit
    以功能完备为节点 push
    以可提测 /上线为节点 merge
    h0wardc
        18
    h0wardc  
       2015-09-22 12:58:38 +08:00
    fhefh
        19
    fhefh  
       2015-11-05 20:31:42 +08:00
    mark~~
    LioMore
        20
    LioMore  
    OP
       2019-12-13 13:44:20 +08:00
    这个问题可以关闭了,当时我还年轻,现在这个答案我自己心里数了
    rainbowStay
        21
    rainbowStay  
       2023-08-25 10:36:32 +08:00
    @LioMore 可否总结下经验?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4871 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:37 · PVG 13:37 · LAX 21:37 · JFK 00:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.