回答:
これは、ファイルREADME
やLICENSE
ファイルを使用して新しいgithubリポジトリを初期化した場合に発生します
git remote add origin [//your github url]
//pull those changes
git pull origin master
// or optionally, 'git pull origin master --allow-unrelated-histories' if you have initialized repo in github and also committed locally
//now, push your work to your new repo
git push origin master
これで、リポジトリをgithubにプッシュできるようになります。基本的に、これらの新しい初期化されたファイルを作業にマージする必要があります。git pull
フェッチしてマージします。必要に応じて、フェッチしてマージすることもできます。
git pull origin master --allow-unrelated-histories
git pull origin master --allow-unrelated-histories
エラーは、コミットするコードとGitHubに存在するコードの構造が異なるために発生する可能性があります。それによって解決できる競合を作成します
git pull
解決するマージ競合:
git push
新しいコードに問題がないことを確認したら、次のコードを使用できます。
git push -f origin master
-f
「強制コミット」の意味はどこですか。
updates-were-rejected
たとえば、リモートのgithub repoに変更を加えた場合にも発生します。githubguiを使用してreadmeファイルにいくつかの変更を加えました。次に、新しい作業をgithubにプッシュしようとすると、リモートで行った変更がローカルには存在しないというメッセージが表示されます。
あなたは参照するかもしれません:「無関係な履歴をマージすることを拒否する」エラーに対処する方法:
$ git pull --allow-unrelated-histories
$ git push -f origin master
提供された回答は私にとってはうまくいきませんでした。
GitHubに空のリポジトリがあり、ライセンスファイルとローカルでの単一のコミットのみが含まれていました。うまくいったのは:
$ git fetch
$ git merge --allow-unrelated-histories
Merge made by the 'recursive' strategy.
LICENSE | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
create mode 100644 LICENSE
また、merge
あなたがしたい前に:
$ git branch --set-upstream-to origin/master
Branch 'master' set up to track remote branch 'master' from 'origin'.