Notice
Recent Posts
Recent Comments
Link
WinGyu_coder
error: The following untracked working tree files would be overwritten by merge: 깃 에러 해결방법 본문
에러 error 및 해결법 모음집
error: The following untracked working tree files would be overwritten by merge: 깃 에러 해결방법
WinGyu 2023. 11. 2. 17:58이 에러는 Git에서 브랜치를 병합(merge)하려고 할 때 발생합니다. 병합하려는 변경사항이 로컬 작업 디렉토리에 있는 일부 추적되지 않은 파일들과 충돌하기 때문입니다. 구체적으로, __pycache__
디렉토리에 있는 .pyc
파일들이 이 경우의 문제입니다.
이 문제를 해결하기 위한 몇 가지 방법이 있습니다:
1. 추적되지 않은 파일 삭제
로컬에서 사용하지 않는 .pyc
파일들을 삭제하면 이 문제를 해결할 수 있습니다. 이는 충돌하는 파일들이 컴파일된 바이트코드 파일이기 때문에 안전한 접근 방법입니다. 파일을 삭제한 후 다시 병합을 시도하세요.
# __pycache__ 폴더와 .pyc 파일을 재귀적으로 찾아서 삭제
find . -type d -name "__pycache__" -exec rm -r {} +
find . -type f -name "*.pyc" -delete
# 병합 시도
git merge master
2. 변경사항 커밋 또는 스태시
로컬 작업 디렉토리에 있는 변경사항을 커밋하거나 스태시(stash)하여 병합 충돌을 피할 수 있습니다.
# 변경사항을 스태시
git stash
# 병합 시도
git merge master
# 스태시한 변경사항을 다시 적용
git stash pop
3. 강제 병합
-f
또는 --force
옵션을 사용하여 강제로 병합을 시도할 수도 있지만, 이는 권장되지 않는 방법입니다. 로컬의 변경사항이 덮어쓰여질 수 있기 때문입니다.
이 중에서 가장 안전하고 일반적인 방법은 추적되지 않은 .pyc
파일을 삭제한 후 병합을 다시 시도하는 것입니다.
--Window-- 환경일시
Windows 환경에서는 PowerShell을 사용하여 동일한 작업을 수행할 수 있습니다. PowerShell에서 다음 명령들을 실행해 보세요:
# 현재 디렉토리에서 __pycache__ 폴더를 찾아서 삭제
Get-ChildItem -Recurse -Filter "__pycache__" | Remove-Item -Force -Recurse
# .pyc 파일을 찾아서 삭제
Get-ChildItem -Recurse -Filter "*.pyc" | Remove-Item -Force
이 명령들을 실행한 후 다시 git merge master
를 시도해 보세요.