'git pull'을 사용하여 로컬 변경 사항을 강제로 덮어쓰는 방법
git pull
가 발생한 적이 있습니까?error: Untracked working tree file 'App.vue' would be overwritten by merge
이것은 일반적으로 가져오는 리포지토리에 일부 변경 사항이 커밋되었지만 비슷한 파일이 로컬에 있습니다. 예를 들어 파일이
README.md
라는 리포지토리에 실수로 추가되고 로컬 버전에 이미 README.md
가 있는 경우입니다.하지만 때로는 저장소에 있는 파일로 파일을 강제로 덮어쓰고 싶을 수도 있습니다. 이 시나리오에서는 로컬 변경 사항이 원격 저장소에서 발견된 변경 사항으로 대체됩니다.
git pull 강제
a
git pull
를 강제 실행하려면 다음 세 가지를 수행해야 합니다.git pull
. 여기서 해야 할 중요한 일은 모든 로컬 변경 사항을 백업 분기에 커밋하는 백업입니다. 파일을 덮어쓸까 봐 걱정된다면 파일을 다른 곳에 복사할 수도 있습니다. 로컬 변경 사항을 다른 브랜치로 커밋/백업하지 않으면 덮어쓰게 되므로 주의하시기 바랍니다. :)
git pull
를 강제 실행하려면 다음 명령을 실행하여 백업 분기를 만든 다음 마스터 분기에서 git pull
를 강제 실행합니다.git fetch --all
# Creates a new branch
git branch my-backup-branch
# Switch to the new branch.. we'll use it to backup our local changes
git switch my-backup-branch
# Add all files to a commit
git add .
# Commit the new branch, so that it is saved
git commit -m "Backup of branch"
# Switch back to our main branch, `master`
git switch master
# Force git pull using `git reset --hard`
git reset --hard origin/master
먼저
git fetch --all
가 원격을 로컬에 동기화합니다. 그런 다음 git branch my-backup-branch
는 백업을 위해 전환하는 새 분기를 생성합니다. 그런 다음 commit
를 추가하여 해당 백업 브랜치 my-backup-branch
에 대한 변경 사항을 커밋하므로 내용이 저장된 상태로 유지됩니다. 변경 사항을 백업 분기에 커밋하지 않으면 변경 사항이 손실됩니다.그런 다음 메인 브랜치가
master
라고 가정하고 메인 브랜치 master
로 다시 전환합니다. 다른 것으로 불리는 경우 해당 명령을 사용해야 합니다. git branch --list
를 실행하여 전환할 수 있는 다른 모든 분기를 볼 수 있습니다.마지막으로
git reset --hard origin/master
를 사용하여 git pull을 강제 실행합니다. 이렇게 하면 로컬 변경 사항을 강제로 덮어씁니다.그리고 끝났습니다. 이제 로컬 변경 사항이 브랜치
my-backup-branch
에 백업되고 모든 원격 변경 사항이 브랜치master
에 강제 적용됩니다.힘내 당기기 강제 - 핵심 명령
원격 저장소에서 git pull을 강제 실행하는 핵심 명령은
git reset --hard origin/master
입니다. 다른 명령은 백업을 만들어 데이터를 잃지 않도록 하는 것입니다!원본/마스터를 찾을 수 없습니다.
origin/master
를 찾을 수 없다면 이제 오리진에 해당 분기가 있을 수 있습니다. 대신 git branch -r
를 실행하여 원격 브랜치를 확인하고 원하는 브랜치git reset
를 선택할 수 있습니다.
Reference
이 문제에 관하여('git pull'을 사용하여 로컬 변경 사항을 강제로 덮어쓰는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/smpnjn/how-to-force-overwrite-local-changes-with-git-pull-p62텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)