2009-07-23 50 views
3

自2005年以來,我一直在TFS上安裝它,對其進行了讚賞,並且在工作中每天都使用它。我想爲我的家庭項目使用Visual Studio 2008 Professional編寫的源代碼控制解決方案,但我買不起TFS。TFS用戶的Git或Subversion

合併後,對我來說最重要的事情就是集成到Visual Studio中,我已經習慣於從IDE內部運行源代碼控制以適應現在的變化。

我已經做了一些功課,它已歸結爲Git和Subversion。

的Git

  • 有gitextensions
  • 流行的SO(支持活躍的社區)

顛覆

  • 有AnkhSVN的
  • 流行的SO(支持活躍的社區)
  • 看起來像它在O'Reilly出版

在某些時候,偉大的文檔,我可能會嘗試兩個只是爲了擴大我在這方面的知識,但直到那時我正在尋找一些剛剛起作用的東西。

  1. 作爲TFS用戶,Git還是SVN會讓我覺得更自然?
  2. 有沒有我會遇到的任何陷阱?
  3. 是其中一個IDE插件功能更強大和強大?
  4. 是否有一個更積極/響應的開發團隊?
+0

我與svn和ankhsvn一起去了,我對我所看到的感到滿意。 – blu 2009-07-24 03:04:15

回答

5

AnhkSVN剛剛起步,但現在它是一個非常好的和穩定的工具。所以我認爲你沒有太多問題。

如果你只是自己開發,那麼去SVN吧,因爲工具集更好一些,也更成熟一些(至少在最後一次檢查時),而且DVCS對於單個用戶來說可能是過量的:)。

兩個系統都在積極開發,並且都有活躍的社區,他們都熱愛並支持每個系統。

Gotchas?是的,退房模式與兩者都消失了。 TFS針對永遠在線的檢入/檢出模型進行了優化,即使檢出不一定像VSS中那樣阻塞。我個人認爲,一旦你習慣了它,你會更喜歡SVN而不是TFS的源代碼控制。特別是在您可能未連接到家庭源代碼控制服務器的移動場景中。

我有點偏頗,因爲我是SVN的fanboy,但是我會選擇SVN來滿足您的需求。當你想開始一個項目,你希望貢獻者以分佈式和斷開的方式將更改合併到你的東西的時候,像Git這樣的東西更適合。如果你不需要,SVN是你的地方。

+0

+1「特別是在您可能未連接到家庭源代碼控制服務器的移動場景中」,可能是我對TFS最大的抱怨。把局域網裏的一臺筆記本電腦拿下來,一旦它不能到達母親身上,就會感到痛苦的世界讓事情同步化。 – blu 2009-07-24 00:41:35

+0

離線工作不應該太痛苦,如果你有2008年。 http://blogs.southworks.net/mwoloski/2007/07/30/offline-support-on-visual-studio-2008-source-control/ http://blogs.msdn.com/benryan/archive/tags/Offline/default.aspx – 2009-07-24 04:35:23

+0

我打算推薦GIT純粹基於我的觀點,AnkhSVN是狡猾的。如果你說它現在非常穩定,那麼也許我應該再試一次。 – Nippysaurus 2009-07-24 06:33:19

2

我會爲Subversion投票,因爲我認爲這將是最接近的。我只是開始使用TFS,但我認爲GIT的分佈式模型可能看起來更加陌生,需要更長時間才能習慣。

Subversion遵循更多的修改代碼,並在TFS使用的模型中檢查它。 Git要求您檢查代碼,然後將其推送到主存儲庫。

另外,GIT在Windows上沒有得到適當的支持,而Subversion是。如果是家庭使用,我也建議在許多免費或廉價的託管解決方案的期待有像:

  • Github上
  • Beanstock
  • unfuddle

如果你電腦裏這些會讓你的代碼更加安全。

2

我已經使用AnhkSVN爲我的獨立項目幾年了,我很喜歡它。一旦與svn + ssh的putty集成以訪問我的託管存儲庫,就會如此無縫。

4

我可以說只有陷阱。雖然我對git非常滿意,但我承認會有很多令人不愉快的意外,比如嘗試使用簽出的工作目錄推回到repo,或者當克隆repo時,您不會總是得到所有的分支。 Subversion是一個更成熟,有機,統一的設計。我個人不能沒有git提供的分佈式功能,但svn肯定有更少的問題。