🌟
git restore / reset / cleanオプション早見表
git restore / reset / clean オプション組み合わせ別 挙動比較表
| コマンド | Stagedな変更 | Unstagedな変更 | Untrackedファイル |
|---|---|---|---|
git restore . |
❌ 対象外 | ✅ リセット | ❌ 対象外 |
git restore --staged . |
❌ (Unstagedへ) | ❌ 対象外 | ❌ 対象外 |
git reset --soft |
❌ 対象外 | ❌ 対象外 | ❌ 対象外 |
git reset |
❌ (Unstagedへ) | ❌ 対象外 | ❌ 対象外 |
git reset --hard |
✅ リセット | ✅ リセット | ❌ 対象外 |
git clean -f |
❌ 対象外 | ❌ 対象外 | ✅ 削除 |
凡例 (Legend)
- ✅ リセット: コマンド実行後、変更が破棄されるか、前の状態に戻ります。
- ✅ 削除: コマンド実行後、ファイルが完全に削除されます。
- ❌ (Unstagedへ): 変更はそのまま残りますが、StagedからUnstagedに戻されます。StagedとUnstagedと両方に変更があった場合、それらが混ざった状態になります。
- ❌ 対象外: コマンドの影響を受けません。
Discussion