2015-06-11 63 views
1

在我的項目中,我目前有兩個分支,一個分支叫做DEMO,另一個分支叫Master。我試圖將DEMO合併到Master中。分支Demo有一些Demo不具備其他更改的文件。爲了做到這一點,我使用Source Tree進行合併。合併完成後。我認爲它是成功的(因爲我沒有得到任何衝突消息)。我試圖做一個主分支的提交(包含所有合併更改)。 在這一點上源樹告訴我有什麼承諾,並在命令提示符下,我得到這個在GIT中合併分支 - 這條消息意味着什麼

$ git commit -m "Merge Demo into Master" 
# On branch master 
# Your branch is ahead of 'origin/master' by 17 commits. 
# (use "git push" to publish your local commits) 
# 
nothing to commit, working directory clean 

我的問題是,如果合併成功,爲什麼它不讓我提交的工作。此外,該消息是什麼意思?

回答

1

我敢打賭,你已經合併了你的分支在一起,這是一個fast-forward合併。無論您在上一個分支上進行了多少次提交,您的主分支都領先於原點;在這種情況下,它是17.

在快進合併中,沒有合併提交,因此不會生成消息。這意味着您可以將這些更改推送到遠程。

如果你真的想創建一個合併提交你合併這些分支之前,那麼你需要明確你做合併的類型。

git merge <branch> --no-ff 

這明確地創建一個合併提交,並會在你選擇的編輯器中打開一個提交信息對話框,讓你,讓你提供一個提交信息。

1

當你做了合併,它會自動提交的結果。現在,你準備把你的本地提交到遠程倉庫。

Your branch is ahead of 'origin/master' by 17 commits.意味着你有本地提交尚未推到了原點。