답변:
먼저 변경 사항을 가져옵니다.
git pull origin branch_name
git pull
. 리모컨은과 같으 origin
므로 실제로 실행됩니다 git pull origin
.. 모든 분기를 업데이트해야하지 않습니까?
푸시하려는 경우 명령 줄에 --force를 추가하십시오. 예를 들어 사용 git push origin --force
(명령 줄을 사용하는 다른 사용자로부터 훨씬 더 많은 지원을받을 수 있으므로 명령 줄을 권장합니다. SmartGit에서는 가능하지 않을 수도 있습니다.) 자세한 내용은 다음 사이트를 참조하십시오. http://help.github.com/ 리모컨 /
--force
해당 분기를 사용하는 유일한 사람이라면을 자유롭게 사용하십시오 . 그래도 다른 개발자와 분기를 공유 할 때 문제가 발생합니다.
푸시하기 전에 rebase 옵션으로 git pull을 수행하십시오. 이렇게하면 온라인 (원본에서) 변경 사항을 가져와 로컬로 적용한 다음 그 위에 로컬 변경 사항을 추가합니다.
git pull --rebase
이제 원격으로 푸시 할 수 있습니다.
git push
자세한 내용은 Git rebase 설명 및 Chapter 3.6 Git 분기- 리베이스 를 참조하십시오 .
git pull --rebase
로 끝나는There is no tracking information for the current branch. Please specify which branch you want to rebase against.
같은 오류가 발생했습니다 . 명령에 "--force" 만 추가 하면 작동합니다.
git push origin master --force
--force
도움이 될 수 있습니다.
명령 에 --force-with-lease 를 추가 하면 작동합니다.
git push --force-with-lease
--force 는 원격 저장소를 로컬에있는 모든 것으로 무조건 덮어 쓰기 때문에 파괴적입니다. 그러나 --force-with-lease 는 다른 사람의 작업을 덮어 쓰지 않도록합니다.
이 --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>
checkout
이러한 변경 사항을 덮어 쓰거나 최소한 푸시에 포함하지 않습니다.
동일한 문제가 발생하여 해결하려면 다음 git
명령을 실행하십시오 .
git pull {url} --rebase
git push --set-upstream {url} master
먼저 github에 저장소를 만들어야합니다.