今、私は自分のサーバー上で視覚的なsvnを使用し、私のマシン上でankhsvn / tortoiseを使用しています。それは十分に機能し、変更する必要はありませんが、DVCSを使用することの利点を確認できる場合は、試してみてください。
ただし、他の人なしでそれを使用しても意味や違いがない場合は、気にしません。
繰り返しになりますが、あなたが唯一の開発者であるときにDVCSを使用する利点はありますか?
今、私は自分のサーバー上で視覚的なsvnを使用し、私のマシン上でankhsvn / tortoiseを使用しています。それは十分に機能し、変更する必要はありませんが、DVCSを使用することの利点を確認できる場合は、試してみてください。
ただし、他の人なしでそれを使用しても意味や違いがない場合は、気にしません。
繰り返しになりますが、あなたが唯一の開発者であるときにDVCSを使用する利点はありますか?
回答:
はい!最大のメリットは、多くのDVCSが提供するより良い分岐+マージのサポートだと思います。分岐とマージは、SVNの苦痛の種です。短期間で機能を追加したり、バグを修正したり、実験したりするために、短命で短いブランチを作成するだけの価値がないのは面倒ですが、マージも面倒で長寿命のブランチを作成するのも苦痛です。一方、Gitでは分岐とマージが非常に簡単なので、作業中のほぼすべてのバグ修正または機能に対して(ローカル)分岐を作成します。
レポジトリの視覚化、ログのgrepなどのためにGitが提供するツールは、SVNよりもはるかに優れていると思います(ただし、DVCSに固有のものというよりはGitのものです)。
また、DVCSは中央サーバーを必要としません。SVNを開発者として使用する場合、プッシュするローカルリポジトリを作成する必要があります。これはGitの要件ではありません。すべてのリポジトリには完全な履歴が含まれているためです。結果として、レポジトリのアーカイブはプロジェクトを圧縮するだけの問題です。バックアップする「中央データベース」はありません。
しばらくSVNを使用してから4年ほど前にGitを使用し始めましたが、振り返ることはありません。
私は個人的なもののためにDVCSをよく使います。(私はgitの$ HOMEにいる人の1人です。)いくつかの利点があります。
git pull
です。git citool
コミットする前に関連のない変更を多数行った場合でも、多くの変更を論理的なサイズのコミットに分割するために使用できます。Subversionでこれを行うツールを知りません。git merge
、彼のリビジョンを私がその間にやったこととマージするために使用します。Gitは、論理的なチャンクでのすべての変更について考えることに慣れました。これは、Subversionがこれまでに行った以上のことです。
私の母は、手遅れでモデムをオフにします。DVCSを使用すると、モデムがオフになった後もVCSを引き続き使用できます。
さて、デフォルトの答えは、「(現在使用しているものは何でも)うまくいくなら、なぜ変わるのか?」です。
しかし、はい、変更の理由がなくても、「古いモデル」よりもDVCSを使用する方が多少簡単だと思います。以下はMercurialについてのもので、私が最もよく使用します。そのため、使用するシステムに応じて走行距離が異なる場合があります。