🍊
Git コミットの取り消し
コミットを取り消そう
コミットを消すことができる
- git revertコマンド
- git resetコマンド
コミットの取り消し
revert(特定のコミットを打ち消す)
- 取り消したいコミットを打ち消すコミットを新しく作成することにより、
特定のコミットに戻す - コミットを取り消したという記録が残るため安全
- リモートリポジトリで変更しているものでは原則必須(resetは使わない)
reset(コミット自体を無かったことにする)
- 特定のコミットまで戻したいときに使う
- コミット履歴が消えるため、やや危険な方法
- ローカルリポジトリだけのコミットを削除する場合に限定して利用する
1. revertについて
流れ_φ(・_・
ファイルを編集する(保存忘れない)
↓
addでステージに登録する
↓
git diff HEAD
で差分を確認
qで抜ける
↓
git commit -m "コメント"
コミットする
↓
git log -p
ログを確認する
↓
編集したところのコミットを示すハッシュをコピー
qで抜ける
↓
git revert ハッシュ
↓
エディタvimが開く
(ここでコミットメッセージも記述できる、Shift+I、INSERT)
:wqでメッセージを保存
↓
ファイルを見ると、取り消した状態まで巻き戻っている
ログを確認するとコミットを取り消したコミットもログが残っている!
最新のコミットを取り消す場合にははハッシュを指定しなくてもHEADを指定すればOK
git revert HEAD
2. resetについて
ファイルを編集する(保存忘れない)
↓
addでステージに登録する
↓
git diff HEAD
で差分を確認
qで抜ける
↓
git commit -m "コメント"
コミットする
↓
git log -p
ログを確認する
↓
編集したところのコミットを示すハッシュ値をコピー
qで抜ける
↓
git reset --hard
ハッシュ値
↓
ログを確認すると、巻き戻ったところよりも新しいのコミットは無かったことになっている!
便利な反面、操作を間違えると復旧が大変だったり、復旧できなくなるので注意!
ファイルの削除をしよう
コミットした後のファイルを削除できる
- git rmコマンド
git rm ファイル名
ファイルを削除した状態をコミット
git commit -m"ファイル名"
ディレクトリを削除したい場合
git rm -r ディレクトリ名
エラーがめちゃ発生して時間かかったけど何とか完了!😂
今日はここまで!
明日はもう金曜日〜〜はやすぎる!
土曜は予定あるから他削って勉強時間カバーするぞ、パワーー
Discussion