2016-09-27 6 views
2

マージするとき、私はしばしば "削除された"コードを変更しました。しかし、他の場所に移動された可能性があります。どこでどこを見つけることができますか?削除されたhunkが今どこに住んでいるのか、どこにgitに問い合わせるのですか?

例:ファイルAに定義された関数fooの1行を変更します。次に、この機能がファイルBに移動された(そして場合によっては1行変更された)ツリーとマージします。 Aでは、競合マーカーは「この塊が削除された」と言っています。

+1

例を表示できますか? – Schwern

答えて

1

あなたのブランチを仮定するとmybranchで、メインツリーには、あなたはgit diff mybranch...masterを行うことができ、masterです。これは、最も近い共通祖先コミットを参照ポイントとして使用して、2つのブランチ間のすべての変更を表示します。

diffでは、ファイルを検索して、ファイルの内容を確認できます。

詳細はgit help diffを参照してください。

+0

やや原油ですが、私はそれが仕事をすることを認めなければなりません。 – sevo

+0

@sevo - heh、それはgitの一般的な説明です。 – Yawar

0

diffのビジュアル化を視覚化するためのビジュアル差分ツールとマージツールがあります。これらは一般的に、削除されたコードが移動されたときに表示されます。

git difftoolで使用します。これは、どのツールを使用するように設定する必要があります。 There's a wide variety available。 Meldを使用した例を次に示します。

enter image description here

+0

私はOPがイントラファイルではなくファイル間の動きを探していると思います。 – msandiford

関連する問題