私はGitとMercurialの経験が数日しかなく、プログラミングの経験もあまりありません。
過去数日間、私は2つを比較する多くの投稿を読みました。私が読んだものと私のテストに基づいて、私は次の結論を得る:
Gitの名前変更は100%自動ですが、100%正確ではありません。名前の変更を推測するのはアルゴリズムに依存しています。エンドユーザーは、たとえそれが完全に間違っていたとしても、その決定を変更することはできません。
Gitの方法は99%のケースで問題ないかもしれませんが、その1%は頭痛の種になるでしょう。リファクタリングが多すぎるとファイル履歴が失われるリスクがあるため、コードをリファクタリングすること(クラス名とコンテンツを同時に変更すること)をためらうことになります。
Mercurialは、常にVisual Studio内で名前を変更/移動し、VisualHGがインストールされている限り、100%自動および100%正確にすることができます。VisualHGは、移動と名前変更を正確かつ自動的に追跡する必要があります(現在、VisualHGにはバグがあります-ファイルの名前が変更されない場合プロジェクト間で移動します)。また、エンドユーザーは、間違いを犯した場合にその決定を変更できます。
Visual Studioがない場合でも、TortoiseHgの[コピー/名前の変更の検出]ウィンドウを使用できます。類似性のパーセンテージを設定し、Mercurialに名前の変更を自動的に検出するように依頼できます。間違えた場合は訂正する機会があります。
私の結論は正しいですか、それとも間違っていますか?
参照: