1
0

【Git hub】Git pushがrejectされた時に真っ先に試す対処法

Posted at

いつも通りGit pushしようとした時、そいつは突如現れました。

 ! [rejected]        main -> main (non-fast-forward)
error: failed to push some refs to 'github.com:RentoYabuki06/python-from-zero.git'
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.

リモートのブランチの方がローカルブランチよりも先行しており、競合してしまっているとのこと。

なんのことやら、と思いましたがよくよく考えると、README.mdファイルをGithub上でいじった直後のことでした。どうやらその変更がローカルに反映されていないのがまずいらしい?

ということでgit pullしてみました。

git pull

何やらたくさんhint表示が出て、エラーではないがうまくいっていないご様子。

hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint: 
hint:   git config pull.rebase false  # merge
hint:   git config pull.rebase true   # rebase
hint:   git config pull.ff only       # fast-forward only
hint: 
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.

よくみてみると、レポジトリが競合しているようです。rebaseしろとのご司令なので、

git pull --rebase

そしてもう一度、

git push

無事にpushされ、Githubにも反映されました!!
Git初心者すぎて焦りましたが、次回同じエラーが表示された時のための備忘録として残しておきます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0