Visual Studio Team System 2008 の自動マージ オプションを無効にすることはできますか?もしそうならどうやって?
-
12-09-2019 - |
質問
別の開発者が作業したファイルを TFS にチェックインするときに自動マージ機能を無効にして、常に手動でマージする必要があるようにしたいと考えています。これを行う方法はありますか?
解決 2
のVisual Studio 2008のような短い答えはノーであるように思われる。
他のヒント
2 人が同じファイルを変更した場合は、コードを「マージ」する必要があります。これには次の 3 つの形式があります。
- バージョンを保持します (変更を破棄します)
- バージョンを保持します (変更を破棄します)
- 両方の変更をマージして両方をブレンドします
衝突を解決する他の安全な方法がないため、「これをオフにする」ことはできません。
マージを無効にするために最も近い方法は、複数のチェックアウトを禁止することです (ファイルをロックして、一度に 1 人の開発者だけが作業できるようにします)。これにより、2 つの同時編集が発生することがなくなり、マージの問題が完全に回避されます。(別の開発者がロックしている間は開発者がブロックされ、ファイルを操作できなくなることがよくあります)。これはひどく、通常は非効率的な作業方法です。私はお勧めしません。
マージの必要性を最小限に抑えることができます。
- 頻繁にチェックインしてください。多くの小さな変更によりマージ競合の危険性が減りますが、いくつかの大きな変更により危険性が増加します。
- 大きくて頻繁に変更されるファイルを多数の小さなファイルに分割して、2 人の開発者が同時に同じファイルを変更する必要がある可能性を最小限に抑えます。
- ファイルの作業を開始する前に、他の人がそのファイルを編集しているかどうかを確認し、他のプログラマーが作業している間にそのファイルの編集を開始する必要がないように「スケジュール」を再編成してください (自分で課した「」)ソフトロック」、マージが必要になる可能性を減らすだけです)
マージ ツールをアップグレードすることもできます。Visual Studio のマージは、 最悪, 、使いにくく、コードに問題が発生することがよくあります。何度も噛まれて信用できないので、毎回面倒な手動マージを行わなければなりません。現在、Araxis Merge を使用しています。これは常に自動マージを完璧に実行してくれるので、マージを任せるだけで大丈夫という自信が得られます。(私はこれほど自信を持てる他のマージ プログラムを使用したことがありません。長年にわたって他のほぼすべてのオプションを試してきました)。手動マージが必要な場合は、「読み取る」ための非常に明確なマージ ビューと、コードの各ビットをマージする方法を選択するための非常に迅速かつ直感的な UI が提供され、非常に効率的になります。私はかつて、VS での複雑なマージに 3 日間苦労しました (諦めるまでコードを何度も破損しました)。その後、Araxis Merge を購入し、マージ全体を 15 分で完璧にやり直しました。優れたツールを使用すると、マージの苦労が本当に軽減されます。
(私は Araxis とは何の関係もありません。世の中のひどいマージ ツールのほとんどに我慢できないだけです)