愛麗絲和鮑勃正試圖在同一個項目上工作。這是迄今爲止我們所做的。git推送和分佈式工作流程
鮑勃:
mkdir myproject
cd myproject
echo "Hello" > readme.txt
git init
git add readme.txt
git commit -m "Initial Commit"
愛麗絲:
git init
git remote add bob ssh://bob/home/bob/projects/myproject
git pull bob
git checkout remote/bob/master -b bobsMaster
echo "Hello again" >> readme.txt
git add readme.txt
git commit -m "Improving readme"
git push bob bobsMaster
現在,這是我們堅持。推送成功,但我不知道愛麗絲的提交已經過去了。當Bob從他的master
分支中鍵入git log
時,Alice的提交無處可尋。
我們是否以完全錯誤的方式介紹了分佈式工作流? Alice和Bob應該如何在同一個分支上一起工作?請注意,我們沒有中央位置來託管我們的回購,因此我們希望完全分發。
編輯:
我們將與拉唯一的工作流程去的建議。我們沒有發現鮑勃回購中的bobsMaster分支的原因是因爲我們認爲這是因爲做了較早的拉動而出現的。感謝您的答案!
鮑勃沒有一個名爲bobsMaster的分支。你是否建議bob將Alice添加爲遠程並從遠程/ alice/bobsMaster合併?如果是這樣,這是否意味着愛麗絲的推動是不必要的? –
不,愛麗絲將'bobsMaster'拖入Bobs存儲庫,因此在那之後它就存在。查看CharlesBs的答案。他推了'bobsMaster:master',這意味着他把_local_'bobsMaster'推到_remotes_'主人'。如果你忽略遠程分支名稱,git假定'bobsMaster' =>'bobsMaster:bobsMaster' – KingCrunch