2012-05-21 27 views
1

我對svn完全陌生,上一次使用任何類型的源代碼控制是1987(sccs)。我是一個單人開發團隊,我唯一的目的是讓我有一個生產源的副本,所以我可以做一個快速解決方案,而另一個副本,我做新的功能開發。如果我發現需要立即關注的錯誤,我會將其修復到「快速修復」副本中,將其推送到生產環境,然後將更改合併到「正在開發的」副本中。當我將「正在進行的開發」推向生產時,我需要重置「快速修復」副本。svn爲ONE MAN SHOP提供的設置建議

我實際開發了3個站點,他們有很多共同點,一些共享代碼,但大多數他們之間的溝通方式很多。

我最大的困惑在於術語「工作副本」和「書籤」。我還想知道'trunk','branch'&'tag',術語,我甚至需要一個人的店嗎?

有關如何設置的建議?我能從相關問題中得到的唯一結果是,我可能應該爲這三個站點使用1個存儲庫。除此之外,我失去了如何設置這一點,我使用Mac上的版本,如果這有什麼區別。

更新:下面建議的書很好,我已經理清了所有(我認爲)。最初的混淆是術語書籤。原來,這是一個版本(Mac)的特定術語,書籤只是書籤的工作副本。

所以這是我已經想通了,首先創建一個存儲庫,然後導入我的三個站點

創建兩個副本爲每個站點

brad/tvdco/prod 
brad/tvdco/fix 
brad/neeis/prod 
brad/neeis/fix 
brad/pdftk/prod 
brad/pdftk/fix 

開始對新功能的工作?/ prod工作副本

如果我需要緊急修復,我在?/ fix中修復/測試,將修復提交到資源庫,然後將其導出並推送。

然後,我更新?/ prod以獲得修復到新的開發中。

當我準備推送新功能時,我提交?/ prod,導出它,推送它,去?/修復並更新它。

從svn的角度來看非常簡單。

回答

1

查看SVN Book(在線)以幫助您順利完成任務。它會向你介紹應該幫助你的概念。第一章將幫助你理解術語。

許多設置都由您決定,您想如何使用它。大多數回購使用Branch,Tag,Trunk root設置,但不是必需的。

+0

迄今寫得很好的書,謝謝,我希望從另一個「一個人團隊」聽到我的簡單使用案例的安裝程序的一些建議。 – RadBrad

+0

這本書正是我所需要的,寫得很好,章節正好涵蓋了我最初提出的問題。一旦我把這一切都變成了後人,我會更新我的問題。 – RadBrad

1

對於一個人團隊,我總是建議分佈式版本控制系統git。它需要沒有中央服務器,在我看來,它比SVN更容易設置和更靈活 - 至少對於你描述的用例(我不想在這裏開始一場火焰戰: ))。 git有一個驚人的official documentation甚至a beginner's guide on stackoverflow

說實話,它自己的術語是一開始就必須依靠的東西。一些前段時間仍在使用svn的朋友,很容易就沒有切換到git。但是如果你長時間沒有使用版本控制,很可能你會發現git的方法很新穎。

+0

嗯,我剛剛開始與svn,唯一的其他Web開發人員的意見,我懇求也努力爭取git。 svn有'本地存儲庫',所以我不需要混淆'中央服務器',並且Mac上的版本將它設置完成。所以現在歸結到這一點,Mac版本的GUI非常好,是否有相當於git的GUI?我只想盡可能透明地介紹一些簡單的版本。我被漂亮的圖形用戶界面吸引住了。 – RadBrad

+0

@RadBrad有[SmartGit](http://www.syntevo.com/smartgit/index.html),它是獨立於平臺的,還有數十種。另請參閱[這個計算器鏈接](http://stackoverflow.com/questions/83789/what-is-the-best-git-gui-on-osx)瞭解更多信息。 – Gnosophilon