2012-04-19 6 views
2

私が働いている会社で私はプロジェクトを始めています。私と他の2人の開発者が会社の最初の開発者であることから始めて、私たちは仕事の基盤を確立しようとしています。どのVCSを使用しますか?

私たちは今後Windows PhoneとAndroid、おそらくはiPhoneに発展する予定だからです。私たちは、Visual Studio 2010とIntelliJ for WPとAndroidをそれぞれ使用しています(ここではそれほど多くはありませんが、アドバイスは大歓迎です)。

私たちはまだVCSを使用しているのですが、私たち全員がSVNを多用していますが、私たちのうち2人だけがTFSバージョンコントロールを使用していました。私たちの誰かがファイルを変更しなくても、編集と競合を取得するためです。私たちはちょうどそれと一緒に遊んだねと水銀。

これらの間の主な利点は何ですか?また、私たちが選んだのは誰ですか?

  • 私たちは単純なマージプロセス(tfsはここで失われるようです)で何かをしたいです。
  • これは、使用しているIDEで(可能な場合)簡単に使用できます(tfsとsvnが両方でサポートされていることがわかっている限り、ほかのものについてはわかりません)。
  • 簡単なタグ付けと分岐。
  • 中央リポジトリの管理が容易(gitとmercurialが配布されているため)
  • コストは問題ではありません。

おかげ

+0

私はあなたがそれを知っているので、それは..それは素晴らしい製品ですので、私はSvnに固執したいと思います! –

+3

皆さんが開発用にWindowsを使用していて、簡単に学習できるようにするには、Mercurialの使用方法を学びます。 Mercurial(Mercurial/Gitを使用したホスティングを提供するhttp://www.bitbucket.orgのようなもの)には、依然として中央リポジトリを持つことができます。 Mercurialは「安い」分岐を持ち、マスターリポジトリにプッシュする前にローカルコミットを行う機能を提供します。私はsvnも大量に使っていますが、ローカルコミット、高速分岐(おそらくこれはSVN 1.7では違いますか?)、痛みのないマージのようなhg/gitの機能が不足しています。 – birryree

+0

@birryree:あなたはGitstersにそれに反撃するように求めている;)...彼らはステージングを持っていて、もっと多くのものをsooooしている。すべての実用的な目的のために、私はGitとMercurialを同等と見なし、主にツールのサポートを検討します。 – 0xC0000022L

答えて

4

好みの問題。それはそれと同じくらい簡単です。

Git、Hg、Bzrは機能の95%とほぼ同等であり、おそらくほとんどのユーザーが必要とするほとんどの機能です。それでも、分岐のために異なるセマンティクスを使用します。

すべてのDVCSはマージで優れています。

私の好みに合わせて、Gitツ​​ールのサポートは、Windowsでは非常に劣っていますが、他のすべてのシステムでは他の2つと同等です。

セントラルレポジトリは、すべてで規約であり、必須ではありません。

+0

好奇心、なぜあなたは "すべてのDVCSはマージで優れています"と言うことができますか?いくつかの例が素晴らしいでしょう。 –

+0

基本的には、Subversionがv 1.5で導入した「マージトラッキング」です。彼らの設計のおかげで、すべてのDVCSはそれをそのまま利用するようです。 – 0xC0000022L

0

TFS 11では既に「Go Live」(実稼働環境で使用できることを意味します)というベータ版では、「ローカルワークスペース」という新しい種類のワークスペースがあります。

ファイルを編集するためにチェックアウトする必要はありません。変更はバックグラウンドで(VSまたは他のソフトまたはシェルから来ているかどうかにかかわらず)監視され、チェックイン時に物事を「調整」します。もう一つの利点は、貢献するためにTFSサーバーに接続する必要はないということです。このような場合、ひどいオンライン/オフラインモードはもう存在しません。

Visual Studioで使用されているマージツールを捨てて、KDiff3またはBeyond Compareの3つの方法でマージすると、最良の結果が得られます。基本的なトリックが分かったら、TFSとのマージプロセスが最適です。 Visual Studio 11には、新しいcomp/diffツールもあり、チェックアウトする価値があります。

DVCSは、あなたが好きなようにブランチを作成できるようにするため、オープンソースプロジェクトの方がより優れています。私はマージがより良いという前のコメントに本当に同感しません。マージは常に痛みを伴うので、3方向マージ(競合を減らす最も効率的な方法)のメリットが得られるシナリオになるようにしてください。

多分あなたはTFSPreview.comプラットフォームに試してみることができます、それは本当に素晴らしいです。

+0

Git/Hg/Bzrでのマージは、CVSや初期のSVNよりも苦痛ではないと思いますか? ...面白い:) ...まあまあ。 – 0xC0000022L

+0

いいえ、私はTFSとDVCSツールとのマージを比較していました。 – Nock

+0

ああ、私はコメントできません。私は十分にTFSを知らない。 – 0xC0000022L

関連する問題