サーチ…


失われたコミットからのリカバリ

過去のコミットに戻って新しいコミットを失った場合は、実行して失われたコミットを回復できます

git reflog

あなたの失われたコミットを見つけて、

git reset HEAD --hard <sha1-of-commit>

コミット後に削除されたファイルを復元する

あなたが誤ってファイルの削除をコミットし、後でそれが必要であることが判明した場合

まず、ファイルを削除したコミットのコミットIDを見つけます。

git log --diff-filter=D --summary

ファイルを削除したコミットの要約をソートしてくれます。

その後、ファイルの復元に進みます。

git checkout 81eeccf~1 <your-lost-file-name>

(あなたのコミットIDで81eeccfを置き換えてください)

以前のバージョンにファイルを復元する

ファイルを以前のバージョンに復元するには、 resetを使用できます。

git reset <sha1-of-commit> <file-name>

すでにローカルにファイルを変更した場合(必要ない場合)、-- --hardオプションを使用することもできます

削除されたブランチを回復する

削除されたブランチを回復するには、実行して削除されたブランチの先頭であるコミットを見つける必要があります

git reflog

実行してブランチを再作成することができます

git checkout -b <branch-name> <sha1-of-commit>

gitのガベージコレクタが参照を持たないコミットを削除した場合、削除されたブランチを回復することはできません。特に小規模なチーム/プロプライエタリなプロジェクトで作業する場合は、常にリポジトリのバックアップを取ってください

リセットからの回復

Gitを使うと、(ほぼ)常に時計を戻すことができます

歴史*を書き換えるコマンドを実験するのを恐れないでください。 Gitはデフォルトでコミットを90日間削除しません。その間、あなたは簡単にreflogからそれらを回復できます:

$ git reset @~3   # go back 3 commits
$ git reflog
c4f708b HEAD@{0}: reset: moving to @~3
2c52489 HEAD@{1}: commit: more changes
4a5246d HEAD@{2}: commit: make important changes
e8571e4 HEAD@{3}: commit: make some changes
... earlier commits ...
$ git reset 2c52489
... and you're back where you started

* --hard--forceようなオプションは--hard 。データを破棄することができます。
* また、共同作業しているブランチの履歴を書き換えないでください。

git stashから回復する

git stashを実行した後に最新のstashを取得するには、

git stash apply

あなたのひだのリストを見るには、

git stash list

次のようなリストが表示されます

stash@{0}: WIP on master: 67a4e01 Merge tests into develop
stash@{1}: WIP on master: 70f0d95 Add user role to localStorage on user login

必要な隠しアイテムに表示されている番号でリストアするには別のgit stashを選択してください

git stash apply stash@{2}

'git stash pop'を選ぶこともできますが、 'git stash apply'と同じように動作します。

 git stash pop 

または

 git stash pop stash@{2}

git stashの違いとgi​​t stash popの違い...

git stash pop : - 隠しデータは隠しリストのスタックから削除されます。

例: -

git stash list

次のようなリストが表示されます

stash@{0}: WIP on master: 67a4e01 Merge tests into develop
stash@{1}: WIP on master: 70f0d95 Add user role to localStorage on user login

コマンドを使用して隠密データをポップする

git stash pop

再び隠しリストをチェックする

git stash list

次のようなリストが表示されます

 stash@{0}: WIP on master: 70f0d95 Add user role to localStorage on user login

1つのstashデータがstash listから削除(ポップ)され、stash @ {1}がstash @ {0}になりました。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow