IT

Mercurial- 변경 설정에서 변경된 모든 파일?

lottoking 2020. 9. 5. 10:11
반응형

Mercurial- 변경 설정에서 변경된 모든 파일?


주어진 변경 집합에서 변경된 모든 파일을 어떻게 확인할 수 있습니까?

이 경우 diff를 찾는 것이 아니라 추가 / 제거 / 수정 목록 만 있습니다.

hg log -vprX diff 목록을 수행하지만 파일을 원합니다.


변경된 파일 만 비용이 청구됩니다. "status 명령"을 사용합니다. 다음은 개정판 REV의 파일 변경 사항을 적용합니다.

hg status --change REV

그냥 제거 p하여 hg log -vpr파일의 목록이 표시됩니다. -p패치 표시를 의미합니다. 템플릿사용 하여 원하는대로 출력 형식을 수도 있습니다 .


질문은 단일 변경 집합에 대한 것이지만 변경 집합 범위에 대해 모든 파일을 수정하려는 다음을 수행 할 수 있습니다.

hg status --rev 1 --rev 10 -m

현재 커밋 된 개정

hg status --change .

.@HEADGit에서 와 현재 rev의 속기입니다.

현재 커밋되지 않은 개정

hg status

임의의 커밋 된 개정

hg status --change REV_ID

설문 개념에 대한 인터넷 검색을 통해이 질문을 찾았습니다. 다양한 변경 세트를 통해 변경된 모든 파일을 표시하는 방법 은 다음과 같습니다.

hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n" | sed -e 's/ /\n/g' | sort -d | uniq
  1. hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n"[start rev]에서 [end rev] 각 변경 세트에서 변경되거나 추가 된 각 파일의 목록이 새 행에 표시됩니다. 스왑으로 {file_mods}{file_adds}{files}모든 파일, 수정, 추가 또는 삭제를 표시합니다.
  2. sed -e 's/ /\n/g' 모든 파일을 분할하여 별도의 줄에 표시하고
  3. sort 목록을 정렬하여 uniq로 목록을 필터링 할 수 있습니다.
  4. uniq 목록을 필터링하여 추가 된 파일 (둘 이상의 개정판에서 변경된 파일)을 제거합니다.

나는이 질문이 오래된 질문이라는 것을 알고 있고 아무도 수정 된 코드 양식 OP를 제공하지 않았습니다. 을 수정 / 추가 / 제거 된 파일 목록 (하지만 레이블이 지정되지 않음)을 실행 hg log -v합니다. 또는 hg log -v -l5마지막 5 개의 커밋에서 수정 / 추가 / 제거 된 파일을 확인하는 데 필요한 것 (아직 리포지토리에 푸시하지 않은 커밋 포함).


대부분의 상점과 같으면 티켓팅 시스템을 사용하여 변경 사항을 추적합니다. 티켓 번호를 알고 있고 해당 티켓과 관련된 모든 커밋을 커뮤니케이션면 (커밋 메시지에 티켓 번호를 포함 가정) 다음을 사용할 수 있습니다.

hg log -k TICKET_NUMBER

이 티켓과 관련된 모든 개정을 표시합니다. 그러나 파일을 작성하지 않습니다. 위의 답변 중 하나를 사용하여 개정판과 관련된 파일 목록을 수 있습니다.

더 간단하게 이전 답변의 정보를 결합하여 다음을 수행하여 변경된 파일을 포함하여 커밋을 검색 할 수 있습니다.

hg log -vk TICKET_NUMBER

참고 URL : https://stackoverflow.com/questions/3789442/mercurial-all-files-that-changed-in-a-changeset

반응형