質問: remove commit ``` というのがあったのでもう1度実行して ためしに d をおしてみると1行目の関係ないコミットが消えてしまい あわてて :q! をしたのですが `Successfully rebased and updated` とでてしまって conflict したような状態になってしまいました both modified になってるファイルをコミットして both-modified がなくなったにもかかわらず (シェルのプロンプトにブランチ名を表示する機能がついてるのですが) ブランチの状態が |rebase というのがついたまま消えず stash や checkout ができません 何がどうなってるのかさっぱりわからないので いったん rebase 前の状態に戻す方法と 再度 rebase のやり方を教えていただけないでしょうか よろしくお願いいたします 追記: --- rebase 前には戻せたのですがやはり rebase の使い方がよくわかりません git rebase -i xxxxxxxxxx で1つ前のコミットを指定すると消したいコミットがリストにでてくるようになったのですが その行で d を押しても何も起こりません その後カーソルキーを右に動かそうとすると1文字だけ消えて 下に動かそうとすると次の無関係のブランチごと2行1度に消えてしまいます 気にせず保存してしまっていいのでしょうか... しかも :q! でキャンセルしようとしても毎回 `Successfully rebased and updated` となってしまうのですが毎回何か変更がされてしまっているのでしょうか vi の環境の問題なのでしょうか... 使ってるものは macOS 10.13.6 iterm2 3.2.9 zsh 5.6.2 (x86_64-apple-darwin17.7.0) VIM - Vi IMproved 8.0 です
回答: > > いったん rebase 前の状態に戻す方法と > > 再度 rebase のやり方を教えていただけないでしょうか > > > まず`git rebase --abort`で現在作業中のrebase内容を中断して、rebase作業に入る前の状態に戻してください。 次に、`git rebase -i 《消したいコミットIDの一つ前のID》`を実行してください。 rebaseコマンド実行後に表示されるテキストエディタで、消したいコミットの行頭を`d`に変更すれば、そのコミットを除いた状態にすることができます。