web-dev-qa-db-ja.com

git stashとgit pull

私はGitを初めて使用し、EGit Eclipseプラグインを使用してコミットしています。

いくつかのファイルを変更し、変更を隠してから、git pullコマンドラインで、最新のコミットをすべてプルアップしました。それから私はApply stashed changes EGitから。今、私の変更が適用され、隠されたファイルの最後のコミットから引き出された変更は消えました。なぜマージの競合について尋ねられず、変更を上書きし、以前のコミットの変更を失ったのかわかりません。

これらの変更を取得する方法は?

69
Mojoy

作業コピーに変更がある場合は、コマンドラインから次の操作を行います。

git stash 

これにより、変更が隠され、ステータスレポートがクリアされます

git pull

これにより、上流ブランチから変更がプルされます。レポートで早送りと表示されていることを確認してください。そうでない場合は、おそらく意図しないマージを実行しています

git stash pop

これにより、スタッシングされた変更が作業コピーに適用され、競合がない限り、スタッシュから変更が削除されます。競合が発生した場合、必要に応じて最初からやり直すことができるように、それらは隠されたままになります。

隠し場所を確認する必要がある場合

git stash list
162
yilmazhuseyin