40

hg shelve (屋根裏ではない) 拡張機能がインストールされており、パッチをドロップしたいと考えています。git ではgit stash drop. shelve エクステンションを使用してこれを行うにはどうすればよいですか?

4

4 に答える 4

32

棚板を使いたくない場合は、次のようにできます。

hg diff > mylocalchanges.txt
hg revert -a
# Do your merge here, once you are done, import back your local mods
hg import --no-commit mylocalchanges.txt
于 2012-05-01T19:22:22.343 に答える
26

Mercurial shelve エクステンションは、パッチを .hg/shelved に保存します。それぞれが単純なパッチ ファイルで、ファイル名はパッチの名前です。「mypatch」という名前のパッチを削除するには、.hg/shelved から「mypatch」ファイルを削除するだけです。

rm .hg/shelved/mypatch

于 2012-04-03T20:41:06.283 に答える
0

minazの答えに基づいて2つのシェルスクリプトを作成しました。

hgshelve

#!/bin/sh
hg diff > $1 && hg revert -a

hgunshelve

#!/bin/sh
hg import --no-commit $1 && trash $1

それらを入れてください~/bin。コマンドが必要sudo apt-get install trash-cliですtrash(または、パッチファイルを削除しないようにスクリプトを変更するか、必要に応じて使用しrmます)。

于 2013-01-31T18:37:26.893 に答える