2013-06-18 2 views
0

내 생각은 여러 개의 rev가있는 저장소에서 시작하여 각각의 변경된 {matching-file-patterns}과 함께 개정판 목록을 얻는 것입니다.수정 된 파일 목록을 Mercurial에서 hg log로 수정 버전과 함께 가져 오는 방법은 무엇입니까?

목표는 해당 데이터를 사용하여 각 .CPP 및 .H 파일이 변경된 횟수와 추가 데이터를 날짜, 파일을 변경 한 사용자 등으로 얻는 것입니다. 프로젝트.

hg log --template "revision:{rev}\nfiles:\n{files % ' {file}\n'}" 

상기 (.txt 파일로 출력 배관 및 외부 파싱 따라) 부분적 내 제 달성되지만, 여전히, 그 결과를, 이것이 필터 사전 관심사에 HG 로그 그 .CPP 및 .H 파일 만 보여줍니다.

나는 그것으로보고 있고, 옵션이 "설정 : * .CPP 또는 * .H"할 것이다, 그러나

hg log "set: **.cpp or **.h" --template "revision:{rev}\nfiles:\n{files % ' {file}\n'}" 

을 모든 유형의 필터링을하지 않습니다.

보고서를 자동화하는 주요 작업에서도 모든 작업을 수행 할 수 있습니다. (나는 그것을 성취하기위한 쉬운 방법이 있다고 확신한다)

고맙습니다. 로그 명령

답변

0
  1. 사용 revsets가 아닌 파일 세트
  2. 를 사용하여 간단한 템플릿 : 당신의 (조건의 관련 편집 후) 내 시험에서 템플릿 출력 아무것도하지만, 개정의 --template "{rev} {author}\n" 쇼 목록

Revset 것 수 -r "file('**.cpp') + file('**.h')"

편집

의 repo를 들어, 파일 세트와 로그를 구현하고 파일을 작동하지 않았다 어떤 이유로 건설 \nfiles:\n{files % ' {file}\n'를 들어

>hg log "set: **.txt or **.png" --template "{rev}:{node|short} {author|user} {date|isodate}\n{files % ' {file}\n'" 

하지만, 정적 텍스트없이 사용할 수 있습니다. 변경 집합에하는 파일 목록에 로그

출력

6:e0670b3704b4 lazybadger 2012-06-24 15:20 +0600 
    functions.php 
    readme.txt 
    screenshot.png 
    style.css 
5:1c722f4facda lazybadger 2012-02-07 07:56 +0600 
    readme.txt 
    sidebar.php 
    style.css 
4:630f5c2e836a lazybadger 2012-01-09 22:33 +0600 
    comments.php 
    functions.php 
    header.php 
    readme.txt 
    sidebar.php 
    style.css 
3:168c55fc758d lazybadger 2011-12-14 04:01 +0600 
    footer.php 
    functions.php 
    header.php 
    readme.txt 
    search.php 
    style.css 
0:f4413f649a23 lazybadger 2011-08-06 01:13 +0600 
    404.php 
    archive.php 
    archives.php 
    comments.php 
    footer.php 
    functions.php 
    header.php 
    html5.js 
    image.php 
    index.php 
    license.txt 
    links.php 
    page.php 
    screenshot.png 
    search.php 
    sidebar.php 
    single.php 
    style.css 

에주의를 - 그들은 모든 유형의 파일뿐만 아니라 필요한 유형을 포함

내가 사용하는 템플릿에서 가져옵니다
+0

http://selenic.com/ hg/help/templates. – Manex

+0

아이디어는 각 rev에서 변경된 .CPP 및 .H 파일 목록을 얻는 것입니다. 나는 당신의 모범이 어떻게 그것을 성취 할 수 있는지 보지 못합니다, 당신이 명확히 할 수 있습니까? 고맙습니다. – Manex

+0

@Manex - 템플릿의 소스를 알고 있습니다. 템플릿이 정확하고 기능적 (가장 간단한 경우)이지만 템플릿/revset 조합에 대해 내 테스트 /에서 작동하지 않습니다. 그리고 왜이 쌍이 작동하지 않는지 말할 수 없습니다 (여기에 있어야하는 동안'hg log' 출력이 없습니다) –

관련 문제