2012-04-10 73 views
2

我的項目之一,我通常需要創建一個開發分支新分支,我完成了我的工作的時候(在新的分支),我需要新的分支合併到開發分支。這是我做的步驟:git:合併兩個分支:什麼是正確的步驟?

git clone –b development <git repository url> 
git branch new-branch 
git checkout new-branch 
git push --all 

我在新分支中執行我的代碼,並在新分支中執行/推送代碼。

現在我需要新的分支合併到開發(請注意,開發分支中得到進一步的時候犯下其他開發者的我完成我的新分支任務)。我的問題是將new-branch合併到development-branch並將其推送到遠程存儲庫的正確方法是什麼?

感謝

回答

1

我更願意把關注的分支作爲壓扁提交上develop(ment)頂部,之後扔掉它。

git checkout development 
git merge --squash new-branch 
git branch -D new-branch 
git push origin :new-branch 

這樣你將保持一個提交包含整個功能。

0

如果其他人都推到「發展」,那麼,你可能已經看到,你推可能會失敗,因爲「非快進」的警告。因此,正確的做法是首先從開發,構建和測試中提取變更,然後再推回到開發。這裏將爲您提供一個工作流程:

$ git clone -b development <development repository> <devdir>; cd <devdir> 
$ git checkout -b new-branch 
$ <edit, build test> 
$ git add ... 
$ git commit ... 
# repeat above 3 
# 
# now you want to get your changes back on development 
$ git pull origin development 
$ <build, test - to ensure new-branch works w/ latest development> 
$ git push origin new-branch:development 
0
git checkout master 
git merge dev 
git commit -m 'merged branches'