ファイルマージを使うと、ファイル間の相違を処理できます。ファイルマージは、マージする 2 つのファイル (または 2 つのうちのどちらかのファイルと祖先ファイル) の間で異なる行を検出すると、行の相違の種類に応じたグリフを使って、2 つのファイルの行にマークします。マークされた行をまとめて相違と呼びます。ファイル内のある相違から次の相違に移動すると、異なる行とそのグリフが強調表示されます。
強調表示されている相違を現在の相違と呼びます。直前の相違を「前の相違」、直後の相違を「次の相違」と呼びます。
行に対する変更が受け入れられると、相違は解決されたことになります。残された相違とは、まだ解決されていない相違のことです。
「自動マージ」オプションがオンの場合は、ファイルマージは相違を自動的に解決します。
グリフは、ファイル間の相違を理解する手がかりとなります。以下の 3 種類のグリフがあります。
グリフの種類 |
意味 |
---|---|
プラス記号 (+) |
新規の行 |
マイナス記号 (-) |
削除行 |
縦棒 (|) |
行内に変更あり |
グリフなし |
行内に変更なし |
共通の祖先ファイルを指定する場合は、祖先内の対応する行と異なると、各ファイルの該当する行の隣に以下のようなグリフが表示されます。
行が 3 つのファイルすべてで完全に同じ場合は、グリフは表示されない
子孫のどちらかまたは両方に行が追加されている場合は、行が追加された位置に正符号 (+) が表示され、行が強調表示される
行が祖先にはあるが、子孫のどちらかまたは両方から削除されている場合は、行が削除された位置にマイナス符号 (-) が表示され、行が強調表示されて打ち消し線が付けられる
行が祖先にはあるが、子孫のどちらかまたは両方で編集されている場合は、行が変更された場所に縦棒 (|) が表示され、異なる文字が強調表示される
相違が解決されると、グリフは白抜きのフォントに変わります。
相違間を移動するには、2 つの区画の上にあるボタンか、「ナビゲート」メニューを使用します。相違を受け入れないで前の相違へ移動する場合は「前」ボタンを、次の相違へ移動するには「次」ボタンをクリックします。「ナビゲート」⇒「検索」を選択すると、特定のテキスト文字列に移動し、「ナビゲート」⇒「行の移動」を選択すると、特定の行番号に移動します。
「親」と「子」の区画で使用できるポップアップメニューを使って相違間を移動することもできます。どちらかの区画を右クリックすると、メニューが開きます。
相違を解決するには、左右の区画の一方で変更を受け入れます。
「受け入れ」ボタンをクリックすると、相違を受け入れる
「受け入れて次へ」ボタンをクリックすると、変更を受け入れて次の相違に移動する
Sun WorkShop TeamWare の「ワークスペース管理」ウィンドウの「解決」トランザクションで起動した場合、「ファイルマージ」ウィンドウに「再読み込み」ボタンが追加されます。解決処理中に「再読み込み」ボタンをクリックすると、ファイルが再度読み込まれ、解決された相違はすべて破棄されて、最初から処理が行われます。「自動マージ」オプションが選択されている場合は、ディスクからファイルが再度読み込まれ、矛盾がない相違は自動的に解決されます。ユーザーは残りの矛盾する行について、いずれか一方のバージョンを受け入れます。
ファイルマージをカスタマイズしてファイル間の特定の相違を無視させるには、「オプション」⇒「相違オプション」を選択します。こうすると、ファイルマージが連続するスペース文字や行末のスペースを無視するように設定できます。