Pro Gitは、このようなgit reset
について説明します。git reset -hardは作業ツリーをインデックスのように見せませんか?
要約
あなたがそれを言うとき
reset
コマンドは停止し、特定の順序でこれら3本の木を上書き:ブランチヘッドを移動
- を指す(
--soft
の場合はここで停止)- 作業ディレクトリインデックス
のように見えるしてください(--hard
ない限り、ここで停止)指数はHEAD ように見える
git reset --hard
をすれば、ということで、その後、私のインデックスの両方私の作業ディレクトリはとなり、正確にはのようになります。だから私は先に行って、これをしなかった: # make a git repo
mkdir mygitrepo
cd mygitrepo
git init
# init commit
touch old_file
git commit -a
# stage a file
touch staged
git add staged
# create file that is not staged
touch unstaged
は、これまでのところ、私のレポは、次のようになります。
HEAD
working dir
old_file +は+ unstagedを上演上演old_file +index
old_file
git reset --hard
を実行すると、m
HEAD
old_file
working dir
old_file index
HEAD
old_file old_file
working dir
old_file + unstaged 私は明示的に
git reset --hard target
のように、ターゲットの引数を渡して、そして私は同様の結果を得たことにより、同様の試験を行った
:上演したファイルはすべてなくなっているが、unstagedファイルがまだgit reset --hard
後に存在しています。
git reset
について私が誤解していると説明してもらえますか?
追跡されたファイルでのみ動作することがわかりませんでした。ありがとう! –