2010-04-21 1 views
6

hg com을 구성하여 외부 편집기에서 팝업 메시지 파일을 열 때 변경된 파일 (HG: 행)을 표시하는 대신 실제로 전체 diff를 표시하도록 할 수 있습니까? 출력을보고 명령 줄에서 별도로 미리 hg diff을 수행하는 것과는 대조적으로 내 텍스트 편집기의 편의에서 동시에 커밋 메시지를 작성하고 싶습니다.'hg com'중에 diff를 표시하려면 어떻게해야합니까?

+0

그냥 OP에 '$ git commit -v'와 동일한 기능이 추가되었습니다. –

답변

1

TortoiseHg 커밋 메시지의 상단 패널과 그 아래에는 영향을받는 파일이 나열된 왼쪽 창과 diffs를 보여주는 오른쪽 창이 차례로 표시됩니다.

2

Mercurial에는 내장 기능이 없지만 편집기 (커밋에 의해 실행 됨)에서 쉽게 시뮬레이션 할 수 있습니다. https://www.mercurial-scm.org/hg/hg-stable/raw-file/tip/hgeditor 추가 예를 제공 https://www.mercurial-scm.org/wiki/DiffsInCommitMessageInVIM

HGEDITOR 스크립트 :

여기서 사용 VIM 일례이다.

기본 JIST은 다음과 같습니다 편집기 실행 실행 hg diff에서

  1. 이있는 임시 파일로 리디렉션 편집기 부하 커밋 메시지 파일은 diff 2016으로
5

모두, committemplate 구성 옵션으로이 작업을 수행 할 수 있습니다. hgrc 파일에 다음을 추가하면 커밋 메시지를 입력 할 때 편집기 창에 diff가 포함됩니다.

[committemplate] 
changeset = {desc}\n\n 
    HG: {extramsg} 
    HG: user: {author}\n{ifeq(p2rev, "-1", "", 
    "HG: branch merge\n") 
    }HG: branch '{branch}'\n{if(currentbookmark, 
    "HG: bookmark '{currentbookmark}'\n") }{subrepos % 
    "HG: subrepo {subrepo}\n"    } 
    {splitlines(diff()) % 'HG: {line}\n'} 

hg help hgrc를 참조 자세한 내용은 committemplate를 검색합니다.