概要
GitHub にリポジトリを作成し、そこに対して初めて git push した際に以下のように表示されることがあります。
% git push --set-upstream origin master ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@github.com/xxx/xxx.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull …') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
対応方法
ググってみるといろいろと情報が出てくるのですが、正解は下記でした。
% git pull --allow-unrelated-histories origin master
要するに一度リモートリポジトリの情報を持ってこいということです。
そして、この時に、–allow-unrelated-histories を付けないと下記のエラーが出ます。
fatal: refusing to merge unrelated histories
補足
GitHub でリポジトリ作成時に何らかのファイルを作成してしまうと、それが initial commit とされてしまい、この問題が起きるようです。
README.md とか .gitignore とかを作る際には気をつけましょう。
というか、自分は面倒臭いので金輪際 GitHub 上では作らないようにしようと思いますが(/_\*)
コメント