我們有一個碩士和QA分支。對於每個任務我創建一個新的分支T1。 我在T1上開發而不是合併到QA,並且一旦批准就合併回主。因此,在開發過程中,我在提交+推送/切換分支(QA)/合併T1到QA /推送/切換分支(T1)上浪費了大量時間。在git擴展中,可以在一個操作中提交併合併到不同的分支中?
我正在尋找一種方法來在git/git擴展中自動執行此過程。
我們有一個碩士和QA分支。對於每個任務我創建一個新的分支T1。 我在T1上開發而不是合併到QA,並且一旦批准就合併回主。因此,在開發過程中,我在提交+推送/切換分支(QA)/合併T1到QA /推送/切換分支(T1)上浪費了大量時間。在git擴展中,可以在一個操作中提交併合併到不同的分支中?
我正在尋找一種方法來在git/git擴展中自動執行此過程。
你可以使用git別名。您可以創建一個要執行的命令列表並將它們設置爲單個命令。
我已經從你的問題做了一個直截了當的例子。適應您的實際需求。對於文檔
http://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases:添加到您的配置文件:
[alias]
commitlikeapro = "!f() { git commit -m \"" ${1} "\" && git push origin T1 && git checkout qa && git merge T1 && git push origin qa && git checkout T1; }; f"
然後你可以使用它作爲:
git commitlikeapro "new message"
來源。
http://haacked.com/archive/2014/07/28/github-flow-aliases/有用的例子。
您的工作流程看起來很像git-flow feature
。 這裏develop
是你的QA
分支。
您可以刪除第一次推動,因爲它是沒有必要的(你可以保持你的T1分支本地,而不會從不推動它)。
通過這種方式,您還可以使用git rebase QA
使您的提交樹正確增長並簡化合並和代碼審查。
這是一個好主意,但由於我必須切換分支,所以還需要很長時間,還需要我存儲更多工作的文件... –
保持代碼組織良好不會使「更多工作」成爲現實。這是一個多一點的組織,對於很少無用的工作 – Asenar
肯定 - 但這個問題是關於保持有組織的代碼與更少的工作...看到上面的問題的一個很好的解決方案 –
它看起來很有用,並且具有與我所問的相似的特徵,但不是我所需要的。 –