アラフォーからのプログラミングとデザイン

大人から始めたプログラミングとデザインについてのあれこれ

git pushしてもnon-fast-forwardになった時の解決方法

f:id:simpledancer:20181211120114j:plain
gitっていつまでたっても悩まされます。。

今、新たにトップページをbootstrapで書いているのですが、その際にいつものように

コミットした内容をgit pushする際にエラーが出ていまいました。ググりまくったけどあれれ、で解決せず。メンターに聞いたら秒で解決しました。

 問題点

私のslackでの質問↓

別件でcommitした内容をリモートリポジトリに反映させようとした際
non-fast-forwardでエラーが出てpushができずです。
```
error: failed to push some refs to 'https://github.com/Yumikot/poledance_jiten'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
```
先日の時点ではまだコードをほとんど変更してなかったため
hintのgit pullで対処して大丈夫だったのですが。今はローカルでかなり変更をかなり加えてしまったため
git pullするとmasterの内容がリモートの内容になってしまいますよね?

 

そんな感じでググったりhelpで調べたりしたのですがnon-fast-forwardのエラーが解決せずでした。

解決 

git push origin master -f

 

しました。

pushできました。

じゃあ、この 

git push origin master -f

 ってなんなんでしょうか?

git-scm.com

 -f, --force           allow adding otherwise ignored files

 

 「ということで無理やり訳すとファイル無視してaddしたのを受け入れちゃっていいよ」

的なことだとなんとなく理解したのですが。合ってますでしょうか。とりあえず無事にpushすることができました。

simpledancer.hatenablog.com