스택큐힙리스트

"git pull"로 로컬 파일을 덮어쓰기하려면 어떻게해야합니까? 본문

카테고리 없음

"git pull"로 로컬 파일을 덮어쓰기하려면 어떻게해야합니까?

스택큐힙리스트 2023. 3. 3. 10:29
반응형

내 로컬 파일을 덮어쓰게 하려면 어떻게 해야 하나요? 내 로컬 저장소에는 서버와 동일한 파일이 있습니다.

오류: 추적되지 않은 작업 중인 파일 'example.txt'이(가) 병합에 의해 덮어쓰여질 것입니다.



⚠ 경고:
추적된 파일에 대한 약속되지 않은 지역 변경사항은 손실될 것입니다.
Git에서 추적되지 않는 로컬 파일은 영향을 받지 않습니다.


먼저, 모든 "origin/

" 참조를 최신 버전으로 업데이트하세요:
"git fetch --all "
현재 브랜치를 백업하세요 (예: "master"):
"git branch backup-master "
"origin/master" 의 최신 커밋으로 이동하고 해당 파일들을 체크아웃하세요.
"git reset --hard origin/master "
번역하십시오. 설명:
"git fetch"은(는) 어떤 것도 병합하거나 리베이스하지 않고 원격 저장소에서 최신 버전을 다운로드합니다.
"git reset"은 방금 가져온 것으로 마스터 브랜치를 재설정합니다. "--hard" 옵션은 작업 트리에 있는 모든 파일을 "origin/master"에 있는 파일과 일치시킵니다.

현재 로컬 커밋 유지하기
[*] : 현재 로컬 커밋을 유지하는 것이 가능하다는 것을 유의할 가치가 있다. "master"에서 브랜치를 만들고 리셋하기 전에.
"git checkout master git branch new-branch-to-save-current-commits git fetch --all git reset --hard origin/master "
이후에는 모든 이전 커밋이 "new-branch-to-save-current-commits" 에 저장됩니다.
커밋되지 않은 변경 사항
그러나 (staged 된 것도 포함하여) 커밋되지 않은 변경 사항은 손실됩니다. 필요한 것을 저장하고 커밋해야 합니다. 그래서 다음을 실행할 수 있습니다:
"git stash "
그리고 이러한 비확정 변경 사항을 다시 적용하려면:
"git stash pop "

"git pull" 명령어를 사용하여 로컬 파일을 덮어쓰기하려면 어떻게 해야 할까요? Git은 협업 프로젝트를 관리하는 데 필수적인 툴 중 하나입니다. "git pull"은 모든 변경 사항을 원격 저장소에서 가져와 로컬 작업 환경에 병합하는 기능을 제공합니다. 그러나 때로는 로컬 파일을 덮어쓰기하고 최신 변경 사항을 강제로 업데이트하기 위해 "git pull"에 대한 추가적인 작업이 필요합니다. 이를 위해서는 아래와 같은 몇 가지 방법이 있습니다. 첫 번째 방법은, "git reset --hard" 명령어를 사용하는 것입니다. 이 명령어는 HEAD를 원하는 커밋으로 리셋하고 로컬 작업 환경과 동기화합니다. 이로 인해 모든 변경 사항이 삭제되고, 마지막 커밋 내용으로 작업 환경이 되돌아갑니다. 두 번째 방법은, "git fetch" 명령어를 사용한 후, "git reset --hard origin/master" 명령어를 실행하는 것입니다. 이 명령어는 원격 저장소에서 최신 변경 사항을 가져와서, 로컬 작업 환경의 모든 변경 사항을 제거하고 마지막 커밋으로 되돌려 놓습니다. 마지막으로, "git pull" 명령어 대신 "git fetch"와 "git merge"를 순서대로 사용하여 원하는 변경 사항을 가져와 로컬 작업 환경을 업데이트할 수 있습니다. 이 방법은 "git pull"이 자동으로 파일을 덮어쓰지 않고, 로컬 작업 환경에 충돌이 발생할 수 있는 경우 유용합니다. 이러한 방법들 중 하나를 선택하면, "git pull" 명령어를 사용하여 로컬 파일을 덮어쓰기할 수 있습니다. 하지만 항상 업데이트를 수행하기 전에 백업 파일을 만들고, 변경 사항을 검토하는 것이 좋습니다. 이렇게 하면 작업 환경이 손상될 가능성을 줄이고, 보다 안전하게 작업을 진행할 수 있습니다.

반응형
Comments