IT Share you

Mercurial에서 마지막 커밋을 어떻게 "롤백"합니까?

shareyou 2020. 11. 30. 20:18
반응형

Mercurial에서 마지막 커밋을 어떻게 "롤백"합니까?


나는 로컬에서만 사용하는 Mercurial 저장소를 가지고 있습니다. 그것은 개인적인 용도로 사용됩니다 (그래서 나는 아무데도 "푸시"하지 않습니다).

3 개의 파일로 커밋을했는데 그 후 4 개의 파일을 커밋해야한다는 것을 알았습니다.

마지막 (최신, 단 하나) 커밋 을 "롤백" 하고 올바른 파일로 "다시 커밋"하는 방법이 있습니까?

(이유는 모르겠지만 " 현재 개정판 수정 "옵션이 활성화되어 있지 않아 사용할 수 없습니다 ...)


이 명령이 필요합니다.

hg rollback

참조 : http://hgbook.red-bean.com/read/finding-and-fixing-mistakes.html .

(기술적으로 이것은 2013 년 8 월 2.7 버전에서 더 이상 사용되지 않지만 정확히 동일한 작업을 수행하는 대안을 아직 보지 못했습니다.)


대답은 스트립입니다 (활성화하지 않은 경우 여기에서 활성화 방법을 확인할 수 있습니다 : https://stackoverflow.com/a/18832892/179581 ).

최신 커밋 만 되돌리려면 다음을 사용하십시오.

hg strip --keep -r .

특정 커밋으로 되돌리려면 :

hg strip --keep -r 1234

strip을 사용하면 파일의 상태가 지정된 커밋으로 되돌 리지만 보류중인 변경 사항으로 유지되므로 파일과 함께 새 커밋에 적용 할 수 있습니다.

제거 된 데이터 복구 :

명령을 잘못 사용했거나 변경 사항을 복구하려면 .hg / strip-backup 폴더 에서 제거 된 파일을 찾을 수 있습니다 .

파일을 복원하는 방법에 대한 자습서 또는 Google에서 제공합니다 (모든 OS에서 동일하게 작동).

ForeverWintr에 대한 크레딧


현대 hg에서 :

hg uncommit

또는 정확한 문제에 대해 :

hg add file4
hg amend

참고 URL : https://stackoverflow.com/questions/20470874/how-do-you-rollback-last-commit-on-mercurial

반응형