[github] Github“원격에없는 작업이 포함되어 있기 때문에 업데이트가 거부되었습니다”

새 저장소를 만들고 복제하고 디렉토리에 파일을 추가하고 파일을 추가하고 add -A변경 사항을 커밋했으며 푸시를 사용하려고 git push <repo name> master하면 “원격에없는 작업이 포함되어 있기 때문에 업데이트가 거부되었습니다”라는 메시지가 나타납니다.

이것은 새로운 저장소이며 readme 파일 만 포함하기 때문에 의미가 없습니다.



답변

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가져오고 병합합니다. 자신에게 적합한 경우 가져 와서 병합 할 수도 있습니다.


답변

커밋하고 GitHub에 존재하는 코드의 다른 구조로 인해 오류가 발생할 수 있습니다. 그것은 해결할 수있는 갈등을 만듭니다

git pull

병합 충돌 해결 :

git push

새 코드가 모두 정상임을 확인하면 다음을 사용할 수 있습니다.

git push -f origin master

어디 -f를위한 스탠드 “힘은 커밋”.


답변

이것이 첫 번째 푸시 인 경우

그냥 변경

git push <repo name> master

이렇게 바꾸세요!

git push -f <repo name> master


답변

관련되지 않은 이력 병합 거부 “오류 처리 방법 :

$ git pull --allow-unrelated-histories
$ git push -f origin master


답변

제공된 답변이 효과가 없었습니다.

LICENSE 파일과 로컬로 단일 커밋이있는 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'.


답변

나는 다음 단계를 따랐다.

마스터를 당깁니다 :

git pull origin master

로컬 리포지토리와 Github 리포지토리가 동기화됩니다. 새 파일을 추가 한 후 다음을 수행하십시오.

git add .

변경 사항을 커밋하십시오.

git commit -m "adding new file  Xyz"

마지막으로 원점 마스터를 푸시하십시오.

git push origin master

Github 저장소를 새로 고치면 새로 추가 된 파일이 표시됩니다.


답변

Visual S2019를 사용하는 경우 다음과 같이 새 로컬 분기를 만든 다음 변경 내용을 리포지토리로 푸시하십시오.
VS2019 현지 지점