インデックスを現在の状態のままにしておきたいのですが、特定のコミットをワークツリーに直接ロードしたいと思います。gitでこれを行う方法はありますか?
2 に答える
4
前の答えは受け入れられましたが、私はそれが本当に質問に答えるとは思いません。インデックスを初期状態のままにするのではなく、作業ツリーを更新した後、HEADに一致するようにインデックスをリセットします。これにより、で行われた作業はすべて失われgit add
ます。
代わりに、一時的なインデックスを使用します。
export GIT_INDEX_FILE=.git/tmpindex
git read-tree abc123 # Read commit into (temporary) index file
git checkout . # Update working tree with contents of (temporary) index
rm $GIT_INDEX_FILE
unset GIT_INDEX_FILE
これにより、通常のインデックスが元の状態のままになります。
于 2013-02-13T16:04:50.507 に答える
1
1つのコマンドで実行できないように見えますが、2つのコマンドで実行できるはずです。
$> git cherry-pick -n abc123 # cherry-pick to index and WC, no commit
$> git reset # revert index
于 2013-02-13T15:20:05.193 に答える