【发布时间】:2014-12-17 02:57:53
【问题描述】:
这不是关于工作流程意见的问题,而是关于如何减少以下工作流程的击键的具体问题。
我的开发团队通常遵循自定义的分支 Git 工作流程。
工作流程
- 代码从
master
分支 - 分支有前缀
feature/<branch>
、refactor/<branch>
、bug/<branch>
等... - 为该分支编写代码(和测试)
- 代码作为拉取请求提交给
master
- 对拉取请求进行审查、评论,然后合并到
master
- 删除旧分支并继续
这是我们的工作流程,非常适合我们。但是,我为完成所有这些操作而执行的 git
命令变得相当重复且有点烦人。
工作流的 Git 命令
git checkout -b feature/new-branch-name
- 做一些工作...
git add .
git commit -m "some commit message"
git push --set-upstream origin feature/new-branch-name
- 转到 Github Enterprise 页面,为刚刚推送的代码提交 Pull Request
- 查看 Pull Request 和 Merge,删除 repo 上的分支,但现在必须在本地删除...
-
git checkout master
(切换回 master 以合并更改) -
git pull
(从新分支获取更新) -
git branch -d feature/new-branch-name
(删除本地分支) - 现在我处于可以重复所有内容的状态
有没有更简洁的方法来减少这么多git
命令?重复所有这些变得非常乏味。我正在考虑编写一些脚本文件来为我管理其中的一些。我知道有些脚本已经存在,但我不想被强迫进入别人的方法,我真的只是在这里寻找节省我的手指的方法。
任何一天,我都会分支并提交大约 3-6 次 Pull Requests。所以我们的分支机构很短命,规模和范围都很小。但实际过程是艰巨的。
谁有更好的实现来完成我团队的分支机制?
【问题讨论】:
-
您是否考虑过利用 Git 别名。优秀的候选人是“结帐”、“结帐大师”、“拉”、“分支 -d”和“添加”。
-
@ThomParkin,如果唯一真正的途径是创建自定义命令,我可能更喜欢 shell 脚本而不是 git 别名。我认为 git 别名仍然必须在命令前加上“git
”。我想我想看看是否有一种方便的内置方法来获取我的工作流程并在 Git 上建立它,但看起来我需要编写一些脚本来做到这一点。
标签: git workflow git-branch git-flow