저는 새로운 수은 사용자이고 프로젝트에 특별한 필요를 가지고 있습니다.Mercurial - 특정 레브의 모든 파일을 나열하는 명령 줄
프로젝트 개정판의 모든 파일을 나열하고 각 파일에 대해 쉽게 되돌릴 수있는 버전이 있는지 알고 싶습니다.
예를 들어: 사전에
rev 100
-toto.c rev 3
-toto.h rev 50
-tata.c rev 100
덕분에 누군가가 아이디어 :
이저는 새로운 수은 사용자이고 프로젝트에 특별한 필요를 가지고 있습니다.Mercurial - 특정 레브의 모든 파일을 나열하는 명령 줄
프로젝트 개정판의 모든 파일을 나열하고 각 파일에 대해 쉽게 되돌릴 수있는 버전이 있는지 알고 싶습니다.
예를 들어: 사전에
rev 100
-toto.c rev 3
-toto.h rev 50
-tata.c rev 100
덕분에 누군가가 아이디어 :
이수은의 파일이 ("가장 최근의 개정과 관련된 특정 개정 번호가없는있어 경우 이 파일이 변경된 ") 하나의 파일에 여러 가지"최신 버전 "이 여러 분기에있을 수 있습니다.
이 명령리스트 수정판 모든 파일 :
HG 매니페스트 [-r REV]
출력
매니페스트 매니페스트 프로젝트의 현재 또는 소정 개정 로그는 내 batchfile에 사용 된 두 개의 명령 이었지만 내 이해에 따라 문제가 있기 때문에 몇 가지 테스트를 수행해야합니다.
레브는 10입니다.이 레브에는 테스트 5가 10 번에서 10 번으로 변경된 test.c 파일이 있습니다.이 파일에 매니페스트 및 로그 명령을 적용하면 test.c 파일이 내 파일 목록과 rev에 있습니다. test.c는 10이 될 것입니다. 문제점은 rev5에 대한 매니페스트를 요청할 때 충분히 이해하면 내 파일 목록에 test.c가 있지만 로그를 적용 할 때 문제가됩니다. 그 파일의 최신 버전 만주세요 ... 그래서 rev10. 회전에서 내 파일이 오래된 버전이 5 ... 나는 당신이 매니페스트 결합 할 수
당신의 조언에 대한 몇 가지 테스트 :
감사 할 오늘 시간이 좀 걸릴 당신의 진술을 얻기 위해 로그인 할 경우에도 목록 :
for i in `hg ma`; do hg log -l1 $i --template="$i: {rev}\n"; done
현재 체크 아웃 된 개정판에있는 각 파일의 최신 변경 사항을 나열합니다. 저장소에있는 모든 파일을 원할 경우 (더 이상 존재하지 않더라도) manifest에 --all 플래그를 지정할 수 있습니다. 그리고 --follow와 --removed를 로그에 추가하십시오.
흠 좋습니다. 나는 지금이 종류의 배치 파일을 사용하고있었습니다 : /f %% G in (tmp.txt)에 대해'hg manifest> tmp.txt' '(echo %% G >> test.txt & hg log -f -l 1 "%% G">> 테스트. txt)' 'del tmp.txt' – Ezekiel
좀 더 자세하게 설명해 주시겠습니까? 파일 개정 버전을 얻으려고 할 때 정확히 무엇을 의미합니까? 마지막 버전이이 버전 이전에 변경되었음을 의미합니까? 저장소의 수명 기간 동안 변경된 시간? 또는 다른 것? – Nanhydrin
안녕 Nanhydrin. 내 말은, 특정 rev (또는 최신 것)에 대해 프로젝트의 모든 파일과 각 파일에 대해 알고 싶습니다. 연관된 rev가 있습니다. 예를 들어 최신 버전이 rev 345 인 경우 다음과 같이 알고 싶습니다.이 rev에서는 toto.c가 rev345, tata.c가 300입니다. 하지만 rev300을 확인하면 toto 140으로부터의 .c 그리고 300으로부터의 tata.c. 내가 각 파일에서 rev를 가지기를 원할 때, 그것은 내가 조사하고있는 rev에 상응하는 최신 버전을 의미한다. 음 ... 설명이 충분하지 않아서 ... 괜찮습니까?:) – Ezekiel
좋아, 그 버전에서만 변경된 파일에 대한 자세한 정보는 찾고 있지 않다. 그 시점에서 리포지토리의 모든 파일에 대한 세부 정보와 마지막으로 수정 된 버전을 찾고있다. 또한 당신이 이미 시도한 것과 당신이 얻고있는 결과를 보여 주면 도움이 될 것입니다. – Nanhydrin