所以現在我正在學習Ruby on Rails的,和我通過這本書「敏捷Web開發使用Rails」工作。我還決定,我想給Mercurial一個去,因爲我已經閱讀了分佈式SCM,這看起來是一個理想的情況。不過,我仍然寧願將我的代碼遠程推送到我的Linux VPS,以便讓我的硬盤決定進行潛水。用水銀SCM分支
所以,我的問題是特定於Mercurial的分支。現在我已經建立了一個遠程存儲庫,並且我可以輕鬆地對SSH進行更改(我甚至設置了一個Nginx FastCGI站點,可以讓我推送它)。然而,我想要做的是爲每一章創作分支,因此我可以在本書中保留一份有關我的進度的良好組織歷史。所以這是我在做什麼:
$ hg branch chapter-10 (do chapter 10 stuff) $ hg commit -m "Chapter 10 complete" $ hg update default $ hg merge chapter-10 $ hg commit -m "Merging chapter 10 into default" $ hg push
一旦我執行推聲明,我從水銀得到這個消息:
pushing to ssh://myserver/hg/depot searching for changes abort: push creates new remote branch 'chapter-10'! (did you forget to merge? use push -f to force)
所以在這一點上,我再次嘗試做一個hg merge
,和它告訴我沒有什麼可以合併,這顯然是真的,因爲我剛合併它。當我用-f強制推送時,一切看起來都很好,甚至web界面也顯示了合適的分支。
綜上所述,我的問題很簡單:我是不是該做的正確方法?是否有更適合Mercurial的方法(即「Mercurial方式」)?老實說,我只是希望知識庫作爲備份。我是分佈式SCM模型的忠實粉絲,但對我來說,這種感覺讓人不知所措。任何有識之士都非常感謝!提前致謝。
您的意圖是:a)在您按照章節工作時擁有一系列檢查點,或者b)在不同的分支上打開多個章節同時進行編輯? – Tarydon 2010-01-20 06:29:30
選項A是我的意圖,但在團隊場景中我可以看到選項B的價值以及 – 2010-01-20 06:34:32