2021/07/12
2021/07/11←2021/07/12→2021/07/13
takker.icon
Could you rebase to one commit?
https://github.com/mahaker/esbuild-gas-plugin/pull/5#issuecomment-877806779
git rebaseって複数のコミットを一つにまとめることだっけ?
いやそれはsquashか
rebase何もわからない
一体どうすればいいのか全然わからない……
本人に直接聞いたほうがいいかな
(ここじゃなくてvim-jpで聞いたほうがいい気もしてきた。でも最近log inしてないから開くハードルが高い……)
【git】分かりやすく!mergeは「合流」、rebaseは「付け替え」! | NullNote
何も引数を指定しないで起動するrebaseはこの「付け替え」をやりますkuuote.icon
これはコミットが刺さってる場所を切り替えたい時にやるもの
多分今回は関係ないかな
-iを指定して起動すると指定した範囲を編集してその内容と「付け替え」るという動作をする
今回必要なのは多分これ(squashとかするやつ)
コミットの範囲をちゃんと指定したらエディタが立ち上がるので指示に従っていけばできると思います
ありがとうございますtakker.icon
ちょっと整理
まず現状がこう
https://gyazo.com/4bbc06b92194ab8a5638efe71806b302
git rebaseは枝を付け替える行為
その際枝のcommitsは全て書き換わる
https://kakeru.app/d743becbfdf8f63fab2fd963c48286d2 https://i.kakeru.app/d743becbfdf8f63fab2fd963c48286d2.svg
今回は関係ない
mahakerさんのcommitがfeature/denoから生えているので、そもそも付け替えできない
git rebase -i HEAD~nはHEADを含めた直近3個分のcommitsを書き換える行為
過去の記録を書き換えられちゃうのか……takker.icon
すごく危険そう
今回の場合はおそらく、feature/denoの(git switch feature/deno)commitsを全て一つにまとめ(git rebase -i HEAD~5→wizardで全て(s)quashを選択)てくれ、ということだと思われる
https://kakeru.app/c16c9629b346a84ebd0c3687a729f098 https://i.kakeru.app/c16c9629b346a84ebd0c3687a729f098.svg
(書きかけ)
ああ、この図は未完成だったのか。忘れてたtakker.icon
でもこのあと何を描き足すつもりだったのだろうか?
また既にremoteにpushしているcommitsを変更するので、git push -f origin feature/denoを使う
本当は避けるべきだが、今回はownerのmahakerさんがそのように指示しているので問題ない
リモートの共有リポジトリに push したコミットを rebase してはいけない | あのコミットをなかった事に。git rebase -i の使い方 - karakaram-blog
懸念点
feature/denoから分岐したreview-pr5に影響を与えないか?
References
【git rebase -i】gitのcommitをまとめる - Qiita
小ネタ git rebaseでコミットをまとめる | DevelopersIO
あのコミットをなかった事に。git rebase -i の使い方 - karakaram-blog
2021/07/11←2021/07/12→2021/07/13