2011-10-14 2 views
38

수은은 git add -p입니까? 사람에서 인용hg에 해당하는 git add -p?

, 옵션 -p와 자식은-추가 (또는 --patch) 다음을 수행합니다

대화 형 인덱스와 작업 나무 사이에 패치의 심술쟁이을 선택하고에 추가 색인. 이렇게하면 사용자는 수정 된 내용을 색인에 추가하기 전에 차이점을 검토 할 수 있습니다.

+0

이것은 새 포트 이전의 TortoiseHg의 일부이거나 적어도 현재 새 포트에서 구현되지 않습니다. https://bitbucket.org/tortoisehg/thg/issue/188/what-happened-to-change-selection-in-the –

+1

@ LasseV.Karlsen : shelve 기능은 최신 TortoiseHg에서 계속 사용할 수 있습니다. 'Repository -> Shelve' 메뉴 나 커밋 윈도우의 아이콘을 통해 액세스 할 수 있습니다. –

+0

[Mercurial cherry picking changes for commit] 중복 가능성 있음 (영문) (http://stackoverflow.com/questions/854930/mercurial-cherry-picking-changes-for-commit) –

답변

33

record extension (Mercurial과 함께 제공)을 살펴보십시오.

Mercurial에는 git과 같은 준비 영역 개념이 없으므로 hg record을 실행하면 작업 복사본의 수정 사항을 검사하거나 큰 덩어리로 간단히 검토 할 수 있습니다. 기록하도록 선택한 변경 사항은 모두 커밋되며 변경하려는 내용은 이 아닌은 작업 복사본에 수정 사항으로 남습니다.

7

TortoiseHg를 사용하는 경우 Shelve 기능이있어 임시 영역에 커밋하지 않으려는 변경 사항을 저장할 수 있습니다. git처럼 허크 선택을 허용합니다. TortoiseHg 워크 벤치에서

이,이 도구는 두 가지 방법으로 액세스 할 수 있습니다 Commit 창에서

  1. 클릭 Repository -> Shelve
  2. 를, 선반 도구 아이콘을 선택합니다. 그것은 다음과 같습니다 :

enter image description here

+3

쉘브 방식의 장점은 커밋하기 전에 변경됩니다. –

+1

+1 Laurens, 'git add -p'를 수행 할 때 변경 사항의 하위 집합이 작동 커밋을 형성하고 오류가 발생하기 쉬운 수동 프로세스를 사용하여 그 추측을 입력한다는 사실을 항상 짐작하게됩니다. 문제를 묻습니다. –

15

Record Extention이 표준 도구입니다. 그것은 당신이 커밋에 포함 시키거나 포함시키지 않기위한 덩어리를 고를 수있게 해준다. 당신이 당신의 hgrc의 확장을 사용하도록 설정하면, 명령은

hg record 

CRecord Extension는 당신에게 당신이 아래로 당신이 포함하고자하는 라인으로 돌아갈 수 있도록이의 상단에 TUI (텍스트 사용자 인터페이스)를 제공하다 . 이것은 표준이 아니므로 hgrc에서 활성화하기 전에 디렉토리에 다운로드해야합니다.

hg crecord 

편집 :

  1. 에 녹화 확장이 더 이상 필요하지 않습니다. 이제 다양한 명령이 -i 또는 —interactive 플래그를 지원합니다. 예를 들면 다음과 같습니다.

    hg commit -i 
    

    ... 포함 할 항목을 큰 덩어리로 물어 봅니다.

  2. CRecord는 3.8을 핵심 기능으로했습니다.이제 —interactive 명령은 이전 CRecord 확장으로 동일한 인터페이스를 가져올 것이다 .hgrc

    [ui] 
    interface = curses 
    

    에 다음을 추가합니다.

7

Mercurial 3.8.1부터는 crecord 확장 기능이 내장되어 있습니다. .hgrc의 'ui'섹션에 interface = curses이 포함되어 있는지 확인하십시오. 그렇지 않으면 불편한 질의 응답 인터페이스가 나타납니다.

[ui] 
interface = curses 

그런 다음 대화식으로 커밋에 포함 할 행이나 라인을 물어보십시오.

hg commit --interactive 
+0

오른쪽; https://www.mercurial-scm.org/wiki/RecordExtension을 참조하십시오. –

관련 문제