ホームページ >システムチュートリアル >Linux >git stash データのデータを取得する方法を教える
git コマンドが間違っていたため、彼は stash に保存された変更を削除しました。この悲しいエピソードの後、私たちは彼が行った仕事を復元する方法を見つけようと試み、それを実行しました。最初に警告します。大規模な機能を実装する場合は、それを小さなチャンクに分割し、定期的にコミットしてください。何もせずに長時間働くのは良い習慣ではありません。誤って削除した変更をスタッシュから復元する方法を示しましょう。 |
1 つだけです。
このファイルの最初のバージョンは次のとおりです:
ファイルにコードを書きます。この例では、大きな変更を加える必要はありません。stash に何かを入れる必要があるだけなので、1 行だけ追加します。 「git diff」の出力は次のとおりです:
git stash の誤操作
私のコードはすでに安全な場所にあり、master ブランチは現在クリーンです (確認するには git status コマンドを使用します)。あとは、リモート リポジトリから変更を取得し、変更を master ブランチに戻すだけです。これが私がすべきことです。
しかし、コマンドを間違って実行しました:リーリー
次のコマンドを実行する代わりに、スタッシュが削除されました:リーリー
このコマンドは、スタッシュをスタックから削除する前にスタッシュを適用します。コマンドgit stash list
を再度実行すると、変更をスタックから master ブランチに戻さずに削除したことがわかります。ああ、神様!次はどうする?
git stash データの取得
パラメータ --unreachable により、git-fsck に到達できないオブジェクトをすべて表示させます。ご覧のとおり、アクセスできないオブジェクトがないことがわかります。そして、スタッシュから変更を削除して同じコマンドを再度実行すると、別の出力が得られました:
現在、アクセスできないオブジェクトが 3 つあります。それで、私の変化はどれですか?実際のところは分かりません。コマンド git show を実行して各オブジェクトを検索する必要があります。
リーリー 覚えておくべきもう 1 つの重要なことは、git はガベージ コレクション プログラム (gc) を定期的に実行するということです。このプログラムが実行されると、git fsck を使用してアクセスできないオブジェクトを表示できなくなります。
以上がgit stash データのデータを取得する方法を教えるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。