작업 디렉토리에서 추적되지 않은 모든 파일을 삭제할 수 있습니까? 작업 디렉토리에 많은 파일을 추가하고 'hg add'를 통해 파일을 추가하지 않고 새 파일을 완전히 제거하고 싶다고 가정 해 봅시다.
PowerShell을 사용하고 있지만 Windows를 사용하므로 여기에서 통합 솔루션도 가능합니다.
작업 디렉토리에서 추적되지 않은 모든 파일을 삭제할 수 있습니까? 작업 디렉토리에 많은 파일을 추가하고 'hg add'를 통해 파일을 추가하지 않고 새 파일을 완전히 제거하고 싶다고 가정 해 봅시다.
PowerShell을 사용하고 있지만 Windows를 사용하므로 여기에서 통합 솔루션도 가능합니다.
답변:
purge 라는 Mercurial Extension을 추가하십시오 . Mercurial에서 배포합니다.
이 확장 기능은 "purge"명령을 "hg"에 추가하여 Mercurial에 알려지지 않은 파일을 제거합니다. 즉, 추적되지 않은 파일. 그래서 당신의 명령은
hg purge
추가하지 않은 파일을 실수로 제거하지 않도록 기본적으로 활성화되어 있지 않습니다.
이 확장을 설치하려면 수은 설정 파일 (Unix의 경우 .hgrc, Windows의 경우 Mercurial.ini)에 추가하십시오.
[extensions]
purge =
이 확장을 일시적으로 활성화하려면
hg purge --config extensions.purge=
hg purge --config extensions.purge=
퍼지가없는 올바른 방법은 다음과 같습니다.
hg st -un0 | xargs -0 rm
rm -rf *
그러나을 포함한 도트 파일 및 도트 디렉토리를 건너 뛰기 때문에 작동합니다 .hg/
. 같은 토큰으로, 다른 모든 도트 파일 (예 : .evil-settings)도 살아남고 퍼지가 더 좋습니다.
감사! 이것은 Powershell에서도 나를 위해 일했습니다.
hg st -un | rm
다음을 시도하십시오.
hg st -un | xargs rm
hg purge --all
추적되지 않은 파일과 무시 된 파일을 모두 삭제합니다. 이는 소스 빌드를 정리하는 데 유용합니다