git commit --amend
Mercurial 의 상대 부분 , 즉 작업 복사본이 연결된 커밋을 수정하는 방법을 찾고 있습니다. 나는 임의의 이전 커밋이 아닌 마지막 커밋에만 관심이 있습니다.
이 수정 절차의 요구 사항은 다음과 같습니다.
가능하면 확장이 필요하지 않습니다. 그것은 있어야 기본이 아닌 확장이 필요하지 , 공식 의욕 설치 오지 않는, 즉 확장.
수정하려는 커밋이 현재 지점의 헤드 인 경우 새 헤드를 만들면 안됩니다. 커밋이 헤드가 아닌 경우 새 헤드가 생성 될 수 있습니다.
절차는 어떤 이유로 든 수정이 실패하는 경우 수정 전과 동일한 작업 복사본 및 저장소 상태를 복원하려는 방식 으로 안전 해야합니다 . 다시 말해, 수정 자체가 실패 할 경우 작업 사본 및 저장소 상태를 복원하는 실패 방지 절차가 있어야합니다. 파일 시스템 관련 문제 (예 : 액세스 제한, 쓰기를 위해 파일을 잠글 수 없음)가 아니라 수정 절차 (예 : 충돌)의 본질 인 "실패"를 언급하고 있습니다. )
업데이트 (1) :
- 프로시 저는 자동화 가능 해야 하므로 사용자 조작없이 GUI 클라이언트가이를 수행 할 수 있습니다.
업데이트 (2) :
- 작업중인 디렉토리의 파일은 건드리지 않아야합니다 (특정 수정 된 파일에는 파일 시스템 잠금이있을 수 있음). 이는 특히 가능한 접근 방식이 깨끗한 작업 디렉토리를 요구하지 않을 수 있음을 의미합니다.