3

git add -pインデックスの場合と同様に、追跡されたファイルから変更を破棄するにはどうすればよいですか? 追跡されたファイルを変更したので、ファイルの一部だけを元に戻したいですか?

4

2 に答える 2

6

使用できます

git checkout -p

追跡されたファイルの一部を元に戻すには ( git checkoutを参照):

git checkout -p現在の作業ツリーから編集を選択的に破棄するために使用できます。

出力例

$ git checkout -p
diff --git a/foo.txt b/foo.txt
index 98d8da3..dfd6895 100644
--- a/foo.txt
+++ b/foo.txt
@@ -1 +1 @@
-Hello world
+Hello world!
Discard this hunk from worktree [y,n,q,a,d,/,e,?]?
于 2013-05-24T11:42:41.707 に答える
-1

対話的にステージングを解除するには、git add -iステージングされたコミットで「元に戻す」コマンドを使用します。インターフェイスは とは少し異なりますが、git add -p基本的に同じことを逆に実行できます。

他の (あまり便利ではない) 可能性としてはgit add -e、手動でパッチを編集する (+ 行を削除し、- 行から - を削除する) ことが挙げられます。

于 2013-05-25T21:31:19.223 に答える