Git
The `git restore` command is used to revert changes in specific files or directories within a Git repository to their original state.
git restore
git restoreコマンドは、Gitのバージョン管理システムで作業ディレクトリの変更を元に戻すために使用されるコマンドです。
- 作業ディレクトリのファイルを元の状態に戻す
-
- 作業中の変更を取り消して、最新のコミットや特定のコミットの状態に戻すことができます。
- 例:git restore <ファイル名> は、指定したファイルの変更を取り消し、最新のコミットの状態に戻します。
- インデックスの変更を取り消す
-
- ステージングエリア(インデックス)に追加された変更を取り消すことができます。
- 例:git restore --staged <ファイル名> は、ステージングエリアから指定したファイルを取り除き、変更を作業ディレクトリに戻します。
- 特定のコミットからファイルを復元する
-
- 指定したコミットの状態にファイルを戻すことができます。
- 例:git restore --source=<コミットハッシュ> <ファイル名> は、指定したコミットの状態にファイルを復元します。
主なオプション
- --source
- 復元元のコミットを指定します。
- --staged
- インデックスの変更を取り消します。
- --worktree
- 作業ディレクトリの変更を取り消します(デフォルト)。
使用例
- 作業ディレクトリの変更を取り消す
-
Git Bash
git restore main.c
- このコマンドは、main.cの変更を取り消し、最新のコミットの状態に戻します。
- インデックスの変更を取り消す
-
Git Bash
git restore --staged main.c
- このコマンドは、main.cをステージングエリアから取り除き、変更を作業ディレクトリに戻します。
- 特定のコミットからファイルを復元する
-
Git Bash
git restore --source=HEAD~1 main.c
- このコマンドは、1つ前のコミット(HEAD~1)から main.cを復元します。
注意点
- git restoreコマンドは、git checkoutコマンドの一部機能を分離して作られたもので、より直感的にファイルの変更を管理するためのものです。
- git restoreを使用する際には、変更が失われる可能性があるため、慎重に操作する必要があります。
このように、git restoreコマンドは、Gitの作業ディレクトリやステージングエリアの変更を効率的に管理するために役立ちます。