0

Cygwinの差分ツールとしてIntelliJを使用したいと思います。しかし、IDEAが差分画面を表示する前に、で作成されたtmpファイル/tmpが削除されています。

私の質問は、どのようにしてtmpファイルの削除を防ぐことができるかということです。これのためにgitに設定はありますか?

編集:

 [difftool "ideadiff"]
 cmd =  echo  \"$(cygpath -wla $LOCAL)\" \"$(cygpath -wla $REMOTE)\"

パスをエコーすると、パスは表示されますが、このパスにはファイルがありません。cat コンソールには、コンテンツを完全に表示しているファイルもあります。しかし、difftoolコマンドを終了した後、/tmp?の下にファイルが表示されません。なんで?

4

1 に答える 1

1

私の推測では、IDEA は (分岐して終了することによって) それ自体を「分離」します。ターミナルから起動することで、それが正しいかどうかを簡単に確認できます。起動直後にプロンプ​​トが表示されれば、それは正しいです。

git を実行すると、差分ツールが終了したように見えるため、一時ファイルがクリーンアップされます。

考えられる解決策は 2 つあります。

  1. おそらくIDEAには、デタッチを防ぐフラグがあります。例えば。gvim — にはそのようなフラグがあり-fます。
  2. そうでない場合は、IDEA をシェル スクリプトでラップして、ファイルをコピーし、コピーを使用して IDEA 自体を起動することができます (git は何も知りません)。次に、それらをいつ削除するかを考える必要があります。それらを再度コピーし/tmpて、OSがそれらをクリーンアップすることを願っています.
于 2012-09-25T21:59:56.933 に答える