間違ったコミットを公開していないシナリオ
ブラウザから操作
https://github.com/git-study-session-demo/case03 (略)
コマンドから操作
git clone <your repository url> case03
cd case03
git switch -c feature/case0301
touch sample.txt
echo "hello, world" > sample.txt
git add .
git commit -m 'add sample.txt'
touch sample02.txt
echo "hello, world" > sample02.txt
touch config.txt
echo "個人設定" > config.txt
git add .
git commit -m 'add sample02 file'
git logコマンドで取り消したいコミットとその直前のコミットのコミットIDを確認する。
git log
git reset --hard <取り消したいコミットの直前のコミットのコミットID>
そして、再度 sample02.txtのみをコミットする
touch sample02.txt
echo "hello, world" > sample02.txt
touch config.txt
echo "個人設定" > config.txt
git add sample02.txt
git commit -m 'add sample02 file'
git push origin feature/case0301
(略)
mainブランチに sample.txtとsample02.txt ファイルは取り込んでいて、そして config.txt は取り込んでいないことを確認
git branch -d feature/case0301
今回のシナリオでは、下記コマンドを実行する前に、コミットした内容をリモート側にプッシュしていません。
もし、先にプッシュを実行してからコマンドを実行すると、どうなるのでしょうか?
git reset --hard <取り消したいコミットの直前のコミットのコミットID>