Programming

Git 푸시 실패,“비 빨리 전달 업데이트가 거부되었습니다.”

procodes 2020. 8. 22. 12:29
반응형

Git 푸시 실패,“비 빨리 전달 업데이트가 거부되었습니다.”


Git Online을 통해 GIT 리포지토리를 편집했습니다. 로컬 코드 변경 사항을 푸시하려고 시도한 후 오류가 발생했습니다.

Git push failed, To prevent from losing history, non-fast forward updates were rejected.

이 문제를 어떻게 해결할 수 있습니까?


먼저 변경 사항을 가져옵니다.

git pull origin branch_name

푸시하려는 경우 명령 줄에 --force를 추가하십시오. 예를 들어 사용 git push origin --force(명령 줄을 사용하는 다른 사용자로부터 훨씬 더 많은 지원을받을 수 있으므로 명령 줄을 권장합니다. SmartGit에서는 가능하지 않을 수도 있습니다.) 자세한 내용은 다음 사이트를 참조하십시오. http://help.github.com/ 리모컨 /


푸시하기 전에 rebase 옵션으로 git pull을 수행하십시오. 이렇게하면 온라인 (원본에서) 변경 사항을 가져와 로컬에 적용한 다음 그 위에 로컬 변경 사항을 추가합니다.

git pull --rebase

이제 원격으로 푸시 할 수 있습니다.

git push 

자세한 내용은 Git rebase 설명Chapter 3.6 Git 분기- 리베이스 를 참조하십시오 .


같은 오류가 발생했습니다 . 명령에 "--force" 만 추가 하면 작동합니다.

git push origin master --force

나는 같은 문제가 있었다.
그 이유는 내 지역 지점이 원격 지점에 대한 추적을 잃어 버렸기 때문입니다.

git branch branch_name --set-upstream-to=origin/branch_name
git pull

합병 갈등을 해결하고 밀어 붙일 수있었습니다.


명령 --force-with-lease추가 하면 작동합니다.

git push --force-with-lease

--force 는 원격 저장소를 로컬에있는 모든 것으로 무조건 덮어 쓰기 때문에 파괴적입니다. 그러나 --force-with-lease 는 다른 사람의 작업을 덮어 쓰지 않도록합니다.

여기에서 자세한 정보를 참조 하십시오 .


(One) Netbeans 7.1 솔루션 : 풀을 시도하십시오. 이것은 아마도 실패 할 것입니다. 이제 로그를 살펴보십시오 (일반적으로 IDE에 표시됨). 다음과 같은 내용이 하나 더 있습니다.

"이 파일로 인해 가져 오기 실패 :"

해당 파일을 검색하고 삭제하십시오 (이전에 백업하십시오). 일반적으로 .gitignore 파일이므로 코드를 삭제하지 않습니다. 푸시를 다시 실행하십시오. 이제 모든 것이 잘 작동합니다.


--rebase옵션을 사용하면 저에게 효과적이었습니다.

  • git pull <remote> <branch> --rebase

그런 다음 저장소로 푸시하십시오.

  • git push <remote> <branch>

git pull origin master --rebase

git push origin master


나는 같은 문제가 있었다. 나는 결심했다

git checkout <name branch>
git pull origin <name branch>
git push origin <name branch>

이것이 나를 위해 일한 것입니다. 여기 git 문서 에서 찾을 수 있습니다.

원하는 지점에있는 경우 다음을 수행 할 수 있습니다.

git fetch origin
# Fetches updates made to an online repository
git merge origin YOUR_BRANCH_NAME
# Merges updates made online with your local work

동일한 문제가 발생하여 해결하려면 다음 git명령을 실행하십시오 .

  • git pull {url} --rebase
  • git push --set-upstream {url} master

먼저 github에 저장소를 만들어야합니다.


때로는 git에서 끌어 당기는 동안 HEAD가 분리됩니다. 다음 명령을 입력하여이를 확인할 수 있습니다.

git branch 
  • (HEAD 8790704에서 분리됨)

    석사

    나타나게 하다

지점으로 이동하여 각 지점에서 새로 가져 오는 것이 좋습니다.

git checkout develop

git pull origin develop

git push origin develop

참고 URL : https://stackoverflow.com/questions/6897600/git-push-failed-non-fast-forward-updates-were-rejected

반응형