1

奇妙に聞こえるかもしれませんが、いくつかの簡単なハック中に、以前のバージョンと .conf の後に隠した変更の両方を反映するようにファイルを変更したい場合がありますgit stash apply

++<<<<<<< Updated upstream
 +stuff
++=======
+ more stuff
++>>>>>>> Stashed changes

この表記法は、競合を手動で解決するために Git によって使用されます。必ずしもそれを探しているわけではありません。必要なのは、外部のマージ ツールを使用せずに、エディターで両方のバージョンを使用する方法です。

おそらく、これは Git 自体ではなくエディターの機能を使用してより適切に取得できる可能性があります。その場合、私は Emacs を使用しています。

4

1 に答える 1

3

git では、stash スタックは実際にはブランチです。つまり、通常のブランチに対して実行できることはすべて、stash に対しても実行できます。これには、マージも含まれます。

したがって、特定のマージ固有の動作が必要な場合stash@{0}は、git stash apply.

違いだけを確認したい場合はgit show、同じ方法 (またはgit diff、またはその他の git コマンド) で内容を隠しておくことができます。

例:meld <(git show stash@{0}:path/to/file) <(git show HEAD:path/to/file)

于 2012-02-21T19:07:58.390 に答える