Eclipseでマージしたくないファイルへの対処
Eclipse + Git環境で、マージに対するメモです。
マスタブランチからブランチX(Xはブランチの名前)へマージを行った時、
マージしたくないファイルだけと、
マスタブランチとブランチXとの間で、
違いが出てコンフリクトする場合があります。
例えば、環境ファイルの内容に相違な部分がある場合などです。
その時、コンフリクトしたファイルに対して、Team Synchronizing Perspectiveで、
Mark as Mergedし、コンフリクトを解消し、
中身もブランチXのHEAD、つまり元の内容にしても、
依然と米印のアイコンがつきます。
この状態でコミットすると、
コンフリクトしたファイルの中身は変わっていないのに
新しい履歴ができてしまいます。
それでも構わないなら、いいですが、
後で以前のソースを探す時、不便になるのは間違いないです。
これを解消するためには、マージしたファイル全てをコミットする前に、
マージしたくないコンフリクトしたファイルの中身を元に戻した(Replace WithでHEADに戻す)後、
Team > Advanced > Untrackします。
それからコミットが終わると、
該当ファイルに対してTeam > Add to Indexします。
こうすると、マージしたくないファイルへは何の影響を与えず、
マージを終えることができます。
コンフリクトしたファイルの数が多いと、手間かかりますが、
そういう場合は、コンフリクトが多いこと自体を解消した方がいいですね。