답변:
' hg forget
'은 ' '의 약어입니다 hg remove -Af
. ' hg remove
'도움말에서 :
... 및 -Af를 사용하여 작업 디렉토리에서 파일을 삭제하지 않고 다음 개정판에서 파일을 제거 할 수 있습니다.
결론 : ' remove
'는 디스크의 작업 복사본에서 파일을 삭제하고 ( -Af
' 를 사용하지 않는 한 )' forget
'는 사용 하지 않습니다.
문서에서 분명히 명령을 사용하여 파일을 프로젝트 기록에 유지할 수 있습니다. 작업 디렉토리에서 파일을 삭제하기 때문에 제거하려는 것처럼 보입니다.
http://hgbook.red-bean.com/read/ 의 Mercurial 서적에서 :
파일을 제거해도 기록에는 영향을 미치지 않습니다. 파일을 제거하면 두 가지 효과 만 있음을 이해하는 것이 중요합니다. 작업 디렉토리에서 파일의 현재 버전을 제거합니다. 다음 커밋 시점부터 Mercurial이 파일 변경 사항을 추적하지 못하게합니다. 파일을 제거해도 파일 기록은 변경되지 않습니다.
매뉴얼 페이지 hg (1)는 잊어에 대해 다음과 같이 말합니다.
다음 커밋 후에 더 이상 추적되지 않도록 지정된 파일을 표시하십시오. 전체 프로젝트 히스토리가 아닌 현재 브랜치에서만 파일을 제거하며 작업 디렉토리에서 파일을 삭제하지 않습니다.
그리고 이것에 대해 제거하십시오 :
표시된 파일을 저장소에서 제거하도록 스케줄하십시오. 전체 프로젝트 히스토리가 아닌 현재 브랜치에서만 파일을 제거합니다.
"hg remove b"
상태가 "A"인 파일에 대해 사용 하면 파일이 추가되었지만 커밋되지 않은 경우 Mercurial은 다음과 같이 응답합니다.
not removing b: file has been marked for add (use forget to undo)
이 응답은 제거와 잊어 버림의 차이점에 대한 명확한 설명입니다.
내 이해는 "hg forget"
버전 제어에 의해 추적되지 않도록 추가되었지만 커밋되지 않은 파일을 취소하는 것입니다. 동안은 "hg remove"
버전 제어에서 최선을 다하고 파일을 밖으로 데리고입니다.
이 스레드 에는 hg remove
7 가지 유형의 상태 파일에 대해 사용하는 예제가 있습니다.
파일을 추적하거나 추적 할 수 없습니다. hg add 를 사용하여 파일을 추적하고 hg remove 또는 hg 를 사용 하여 파일 추적 을 해제하십시오. 플래그없이 hg remove 를 사용 하면 파일을 삭제하고 추적을 해제하며 hg forget 은 파일 을 삭제하지 않고 단순히 추적을 해제합니다.