BETA

git rebase後にリモートにも反映させる方法

投稿日:2019-12-16
最終更新:2019-12-16

rebase後のリモートへの反映のさせ方が分からなくて悩んでたけど、調べてみたら案外単純に解決できた。

現在masterブランチとfeatureブランチがあって、featureブランチにいるとする。

A--B--C--F--G (master)(origin/master)  
       \      
        D--E (*feature)(origin/feature)  

この状態で$ git rebase masterすると以下のようになる。

A--B--C--F--G--D'--E'  (*feature)  
A--B--C--D--E (origin/feature)  

新しいD',E'コミットが作られ、masterに引っ付いた。
だが、ローカルブランチとリモートブランチが分離している。
この状態で$ git pushしようとする、拒否されてしまう。

これを解決するためには$ git push -fで無理やりローカルの状態をリモートに反映させてしまえばいい。
$ git push -fした後は以下のようになる。

A--B--C--F--G--D'--E'  (*feature)(origin/feature)  
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

BЯunoの技術ブログ。日々学んだことを記録していくよ。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう