[英]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.