hg revert는 지정한 파일들을 이전 상태로 되돌리는 명령어.
hg update가 저장소 전체를 특정 리비전으로 업데이트 시키는데 반해, hg revert는 지정한 파일들만 업데이트 시킴.
# 전체 저장소를 되돌릴 경우 hg update 사용.
hg update REV # REV 리비전으로 업데이트
hg update --clean . # 변경사항 전부 날려버리고 현재 리비전으로 업데이트
리비전을 지정하지 않았을 경우, revert는 지정한 파일/디렉토리의 내용을 working directory의 parent로 되돌림.
이때 되돌려진 파일은 수정/추가/삭제/복사/이름변경 그 어느 상태도 아님.
만약 working directory의 parent가 2개일 경우, 리비전을 반드시 명시해야 함.
-r / --rev 혹은 -d / --date 옵션을 지정할 경우, hg revert는 working directory의 parents를 변경하는 것이 아니기 때문에 지정한 파일은 해당 리비전에서의 상태값으로 변경됨.
hg backout의 개념과 유사함.
수정된 파일은 되돌려지기 전 .orig 라는 확장자가 붙은 파일로 백업됨. 이게 싫으면 --no-backup 옵션을 지정할 것.
아래는 옵션 리스트
-a / --all # 다른 매개변수가 없을 경우 전체 변경
-d / --date DATE # DATE로 지정한 날짜의 최상위 리비전 지정
-r / --rev REV # 지정한 리비전으로 revert
-C / --no-backup # 원본파일 백업하지 않음
-I / --Include PATTERN [+] # PATTERN에 매칭되는 파일 지정
-X / --Exclude PATTERN [+] # PATTERN에 매칭되는 파일 제외
-n / --dry-run # 실제로 revert를 실행하지 않고 결과만 출력
'버전관리' 카테고리의 다른 글
[Mercurial] .hgignore (0) | 2014.09.01 |
---|---|
[Mercurial] Update (0) | 2014.09.01 |
[Mercurial] 날짜 포맷 (Dates) (0) | 2014.09.01 |
[Mercurial] 에디터에서 단축키로 hg annotate 실행하고 필요한 만큼만 콘솔에서 확인 (editor, externel tools, console) (0) | 2014.08.20 |
[Mercurial] 파일셋 지정 (Specifying File Sets) (0) | 2014.08.14 |