美文网首页程序员工具癖
Git Town - 再也没有杂乱的 commit 信息了,菜鸟

Git Town - 再也没有杂乱的 commit 信息了,菜鸟

作者: Wilson_Lou | 来源:发表于2016-11-17 15:19 被阅读259次

    什么是 git-town ?

    Git Town 为 git 提供了几个高级别的命令,来简化开发者在开发过程中典型的操作,例如创建和提交特性分支(feature branches),像一位 git 专家一样。

    如何使用 git-town ?

    想象一下工作中典型的场景,从 github clone 一个仓库,切换到 develop 分支,饭后创建自己的特性分支,然后有若干次自己分支的提交,特性开发完成后合并到 develop 分支,这期间你需要敲非常多的而且重复的命令。

    看看 git-town 是如何工作的。

    安装 git-town

    brew install git-town

    为 git-town 创建别名

    默认情况下 git town 的命令是 带有 town 前缀的,像 git town-hack, 我们可以为其设置别名,去掉前缀 git hack

    可以使用 git config --global alias.hack town-hack 命令,逐个修改别名,
    也可以使用 git town alias true 一次性修改所有 git town命令的别人

    创建特性分支

    切换到你要的分支,比如 develop 分支,然后 hack 出新的特性分支

    git checkout develop
    git hack mybranch
    

    这样就会根据 develop 分支克隆出一份名为 mybranch 特性分支,你会看到 git town 输出的 log 信息,先会更新当前 develop 分支,然后才会 checkout 新分支,节省了操作步骤,也不容易出错遗漏。

    提交改动

    git add .
    git commit -m "some message"
    git sync
    

    会看到 git town 会执行一下操作:

    [mybranch] git fetch --prune
    
    [mybranch] git checkout develop
    
    [develop] git rebase origin/develop
    
    [develop] git checkout mybranch
    
    [mybranch] git merge --no-edit origin/mybranch
    
    [mybranch] git merge --no-edit develop
    
    [mybranch] git push
    

    完成分支

    git ship -m 'some message'

    展示的信息如下:

    [mybranch] git fetch --prune
    
    [mybranch] git checkout develop
    
    [develop] git rebase origin/develop
    
    [develop] git checkout mybranch
    
    [mybranch] git merge --no-edit origin/mybranch
    
    [mybranch] git merge --no-edit develop
    
    [mybranch] git checkout develop
    
    [develop] git commit -m "some message"
    
    [develop] git push
    
    [develop] git branch -D mybranch
    

    至此一个特性分支开发完整。

    使用 git ship 命令 可以保证合并到 develop 分支上内容只有一次提交,可以保证 git commit tree 干净整洁。

    想看更多精彩文章,请访问我的 blog 网站 geeekr.com

    相关文章

      网友评论

        本文标题:Git Town - 再也没有杂乱的 commit 信息了,菜鸟

        本文链接:https://www.haomeiwen.com/subject/mobdpttx.html