About resetting commit and rm the file
コミットの取り消し
直前のコミットの取り消し
$ git reset <打ち消したいコミットID>
直前のコミットを打ち消す場合には以下のコマンドを使用
$ git reset --soft HEAD^
--soft
オプション:ワークディレクトリの内容はそのままでコミットだけを取り消したい場合に使用--hard
オプション:コミット取り消した上でワークディレクトリの内容も書き換えたい場合に使用HEAD^
: 直前のコミットを意味HEAD~{n}
n個前のコミットを意味
コミットの打ち消し
$ git revert <コミットのハッシュ値>
作業ツリーを指定したコミット時点の状態にまで戻し、コミットを行う。
コミットの上書き
直前のコミットに上書きする場合は以下のコマンドを使用
$ git commit --amend
リモートリポジトリからのみ特定のファイルを削除
git rm --cached <target file>
ディレクトリを削除する場合は
$ git rm --cached -r <target directory>