[英]Mercurial; hg log command displays huge, unorganized list of files for rev 0 inside of a cloned repository
[英]Mercurial - hg command line to list all files from a specific rev
我是一個新的商業用戶,我對我的項目有特定的需求。
我想知道是否有一種簡便的方法可以列出項目版本中的每個文件,並為每個文件獲取版本。
例如 :
rev 100
-toto.c rev 3
-toto.h rev 50
-tata.c rev 100
在此先感謝您是否有想法:)
Hg中的文件沒有與之關聯的特定修訂版本號(“此文件的最新修訂版本”)。單個文件可以在不同分支中具有多個“最新版本”。
此命令列出特定修訂版中的所有文件:
汞清單[-r REV]
輸出項目清單的當前版本或給定版本
manifest和log是我在批處理文件中使用的兩個命令,但是我必須做一些測試,因為按照我的理解,這是一個問題:
修訂版是10,在該修訂版中有一個文件test.c,在修訂版5和10中已對其進行了更改。如果我對其應用清單和日志命令,我的文件列表和測試修訂版中將包含test.c。 c將是10。問題是,如果我理解得足夠好,當我向清單索要rev5時,我還將在文件列表中包含test.c,但是當我在其上應用日志時,它只會給我該文件的最新版本。因此是rev10。 即使在第5版中,我的文件具有最舊的版本,我今天還是需要一些時間進行測試:)
感謝您的建議
您可以結合清單和日志來獲得您聲明的列表:
for i in `hg ma`; do hg log -l1 $i --template="$i: {rev}\n"; done
它將列出當前簽出的修訂中找到的每個文件的最新更改。 如果要在存儲庫中找到所有文件(即使不再存在),則可以為清單指定--all標志。 也許添加--follow和--removed以記錄日志。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.