Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ ステージング前の変更の取り消し | 変更の取り消し
Gitの基礎

ステージング前の変更の取り消し

メニューを表示するにはスワイプしてください

作業ツリーを変更したものの、それらの変更をステージングする前に破棄したい場合があります。
ここでは、Git で変更をステージングエリアに追加する前に元に戻す方法について説明します。

git restore による変更の破棄

git restore コマンドは、作業ツリーの変更を破棄するための多用途なツールです。ステージング前に変更されたファイルを元に戻すには、次のようにこのコマンドを使用します。

git restore <file>

ここで <file> はファイルの名前またはプロジェクトディレクトリからの相対パスです。このコマンドは、指定したファイルをステージング済みのバージョンに戻します。ステージングエリアが空の場合は、ファイルを最新コミットのバージョンに戻します。

ステージ済みバージョンへの復元

まず、recipe.txt コマンドを使って echo という新しいファイルを作成し、ゆで卵のレシピを記述します:

echo "1. Prepare the Eggs
2. Boil Water
3. Place Eggs in the Saucepan
4. Boil the Eggs
5. Reduce Heat
6. Cook for 6-7 minutes" > recipe.txt
recipe.txt ファイルの作成

このファイルを追加し、レシピの次の手順を新しい行として追記して修正します:

git add recipe.txt
echo "7. Transfer eggs to ice water or run cold water over them" > recipe.txt
recipe.txtファイルの追加と修正

誤って間違った演算子が使用されました — >(ファイルを上書き)ではなく、>>(新しい行を追加)が正しいです。 修正する前に、作業ツリーとステージングエリアのステータスを確認します:

git status
ステータスの確認

ご覧のとおり、ファイルの初期バージョンはステージ済みです。このバージョンにファイルを戻し、作業ツリーとステージングエリアのステータスを再度確認します。

git restore recipe.txt
git status
ファイルをステージ済みバージョンに復元

ご覧のとおり、作業ツリーは現在クリーンな状態となり、変更は元に戻され、ファイルはステージ済みバージョンに復元されました。

ファイルの作成とステージング
ステージ済みバージョンへの復元

最新のコミットへのリセット

まず、recipe.txt ファイルの作成をコミット:

git commit -m "Add a file with a simple recipe for boiled eggs"
recipe.txt ファイルのコミット

コミットが成功。 次に、レシピの次の手順として別の行をファイルに追加し、作業ツリーの状態を確認:

echo "10. Transfer eggs to ice water or run cold water over them">> recipe.txt
git status
recipe.txt ファイルの修正

うっかりミスが発生しました — 追加した手順は 10 ではなく 7 である必要があります。
問題ありません。この変更は最新のコミットに戻すことができます。
まず、最新のコミットを確認します:

git log -n 1
最新のコミット

このコミットがまさに必要なものであるため、変更をこのバージョンに復元し、作業ツリーがクリーンであることを確認:

git restore recipe.txt
git status
最新のコミットへの復元

作業ツリーがクリーンな状態であり、変更が元に戻され、ファイルが最新のコミットのバージョンに復元された状態。

最新のコミットへの巻き戻し
question mark

git restore <file> コマンドは、変更をステージする前に何を行いますか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 3.  1

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 3.  1
some-alt