Mercurial에서 git reset --hard HEAD를 어떻게합니까?
Mercurial을 사용하려는 Git 사용자입니다.
무슨 일이 있었는지 : hg backout
되돌리고 싶은 변경 세트를 수행했습니다. 그게 새로운 머리를 만들었 기 때문에 hg는 나에게 병합하라고 지시했습니다 ( "기본값"으로 돌아가서 가정합니다). 병합 후에도 여전히 커밋해야한다고 말했습니다. 그런 다음 병합에서 충돌을 해결할 때 내가 잘못한 것을 발견하고 이전과 같이 모든 것을 갖기를 원했습니다 hg backout
. 즉, 커밋되지 않은 병합이 사라지기를 원합니다. Git에서이 커밋되지 않은 항목은 인덱스에있을 것이고 나는 그것을 git reset --hard HEAD
없애기 위해 할 것입니다. 그러나 내가 읽은 것에서 인덱스는 Mercurial에 존재하지 않습니다. 그럼 어떻게 되돌릴 수 있을까요?
아직 커밋하지 않았고을 사용하여 모든 병합 작업을 취소 할 수없는 것처럼 들립니다 hg update --clean
.
그러나 최신 mercurial에는 단일 파일을 다시 병합하는 편리한 명령이 hg resolve path/to/file.ext
있습니다.. 에서 hg help resolve
:
The available actions are: ... 4) discard your current attempt(s) at resolving conflicts and
처음부터 병합을 다시 시작합니다. "hg resolve file ..."(또는 모든 미해결 파일의 경우 "-a")
이것은 가깝습니다.
hg update --clean
Hg 매뉴얼의 GitConcepts 페이지는 git
Mercurial에서 사용자에게 익숙한 많은 작업을 수행하는 방법을 설명합니다 .
Mercurial에는 기본 제공 git reset --hard
동작 이 없습니다 . 그러나 strip
확장은 수행하는 strip
명령을 제공합니다 . 사용하려면 먼저strip
~/.hgrc
파일 에서 활성화 하십시오.
[extensions]
strip =
참고 :이 확장은 Mercurial 2.8의 새로운 버전으로 제공됩니다. 이전 버전은 제공 strip
에 명령을 mq
확장 .
이제 hg strip
또는 같은 명령을 실행할 수 있습니다 hg help strip
. 변경 집합과 모든 하위 항목을 제거하려면 해당 변경 집합을에 대한 인수로 지정하면됩니다 hg strip
. 예를 들어 방금 만든 마지막 커밋을 제거하려면 ( hg rollback
더 이상 롤백 할 트랜잭션이 없다고보고하는 명령을 사용한 후 ) tip
개정을 제거 할 수 있습니다 . 이 명령을 실행할 때마다 다른 개정판이 제거됩니다. hg strip
의 행동은 되돌릴 수없는 것으로 간주되어야합니다. 익숙하지 않은 사용자는 사용하기 전에 저장소를 백업해야합니다.
$ hg strip tip
예를 들어 revsets 구문을 사용 하면을 실행할 때 추가 헤드가 표시되는 내 커밋을 제거하고 싶다고 표시합니다 hg heads
. 아래 표현식에서 이외의 특정 개정을 지정하면 tip
선택한 개정의 조상이 아닌 현재 분기의 모든 항목이 잘립니다. 이것은 내가 명령을 내릴 때 내가 원하는 행동에 가장 가깝게 보인다 git reset --hard HEAD
.
$ hg strip "branch(tip) and not(ancestors(tip)::tip)"
git에서 명령 :
git reset --hard # reset to last commit
git clean -df # delete untracked files
~와 같다
hg update --clean # reset to last commit
hg purge # delete untracked files
참고 URL : https://stackoverflow.com/questions/2672454/how-do-i-git-reset-hard-head-on-mercurial
'Program Tip' 카테고리의 다른 글
복사본 대신 객체에 대한 const 참조 반환 (0) | 2020.11.01 |
---|---|
디렉토리에 응용 프로그램 바로 가기 만들기 (0) | 2020.11.01 |
'int main () {return (0);의 부동 소수점 예외 (SIGFPE) (0) | 2020.11.01 |
git이 내 파일이 변경되었음을 인식하지 못하여 git add가 작동하지 않는 이유 (0) | 2020.11.01 |
HTTPS에서만 .htaccess에서 HSTS 헤더를 설정하는 방법 (0) | 2020.11.01 |