2010-09-16 66 views
1

我必須爲項目安裝代碼版本控制系統。我想有兩個分公司,一個公共和一個私人;每個分支都有它自己的一組用戶。我想爲私有分支編寫一些鉤子 - 當開發人員在分支中提交代碼時,一些文件被複制到另一個區域(類似於部署操作)。此外,我想有一個網絡界面的存儲庫。代碼版本系統建議

什麼軟件給你我的電子書籍對於這些要求? SVN是不錯的人選?

L.E.操作系統是GNu/Linux,我更喜歡開源解決方案。

謝謝,

回答

3

它(有私人和公共分支)不會與SVN工作(很好)。

你可以做的是使用分佈式版本控制軟件:git的,善變,商場,化石......你有選擇。 mercurial可能更容易學習,它可能是對分佈式存儲庫概念的一個很好的介紹。

在這些系統中,你有你的計算機上的完整歷史資料庫,並可以把其他地方(也許在網上公開訪問)它的克隆。 你在本地倉庫上工作(你甚至可以有幾個倉庫),然後在本地倉庫中進行提交。每個提交都不會移出您的存儲庫,它將保留在那裏。

直到你拉或推到其他存儲庫。這些是倉庫之間變化的交易(推/拉)(你的,你的一個克隆,有一些特殊修改,一個朋友的回購,一個隊友回購,一個開發團隊回購,一個公共回購,你想要的)。

由於該組織是免費的,在您的具體情況下,您當然希望有一個私人團隊回購的地方,您的隊友將獲得並進行更改,另一個公共回購(可能位於bitbucket.org或github.org如果你的選擇git),直到你決定在公共回購中推動你的團隊回購變更爲止。

我目前正在制定正是由這樣一個項目。

+0

謝謝,我發現git非常好。 – 2010-09-17 08:58:28

0

Subversion是我的投票。我有一個類似的主幹開發和發佈標籤的設置,它有部署鉤子將文件推送到遠程web服務器。 Websvn可讓您通過瀏覽器查看存儲庫,也可以使用功能更豐富的解決方案Redmine執行問題跟蹤以及存儲庫的GUI。

+4

-1 Subversion支持並行開發的兩個團隊的分支/合併完全超出了大多數分佈式VCS。在他的使用情況下是不恰當的。 – 2010-09-16 19:33:56

+0

感謝您的回答,但我會使用git :-) – 2010-09-17 08:58:52

0

SVN是相當恆星

根據您的技術水平也有GIT/CVS。但是,如果你有一個明確的選擇與SVN一起也可以抓住Tortiese svn,因爲gui很不錯

+0

+1 - 我也使用Tortoise - 如果您在IDE之外的項目上工作,shell集成非常方便 – Ken 2010-09-16 19:19:37