我有一个非常大的mercurial repo,初始克隆需要几个小时。克隆是通过https通过scmmanager完成的。如果可能的话,我想试着把它缩短到几分钟。
我的mercurial存储库运行在一个有24个核心的服务器上,从我的工作站进行克隆时,负载大约是2。我想知道如何在服务器上调优mercurial以使用更多的内核。iowait为0。服务器上的网络流量很低,iftop显示5Mb/s的TX,而我有千兆位以太网。在总共64 24中使用了4 24的ram,24 24用于磁盘高速缓存,1.5 24用于缓冲器。
在我的工作站上,我尝试将hg重置为-5。负载大约为0.5。我的工作站有8个内核。我的工作站也有千兆位以太网,而且流量也很小,大约是2Mb/s RX。在我的工作站上,iowait也是零。
mercurial服务器的操作系统为CentOS 6,工作站的操作系统为Debian jessie。任何想法都将不胜感激。
编辑:尝试在ssh上执行克隆以及本地非硬链接未压缩克隆。两者都需要很长的时间。(小时)回购大小为8 is。不确定如何继续。
发布于 2014-08-20 10:14:41
克隆本身对于Mercurial来说是非常低复杂度的操作。可疑的scmmanager。尝试使用ssh:// URL直接从文件系统克隆,加载应该是zilch。
另外,请尝试使用--uncompressed在克隆上禁用压缩。如果它有帮助,hgweb使其在服务器端可设置。
发布于 2014-08-20 15:33:56
您的存储库的总大小是多少?
Ry4an提出的建议,应该确实能解决你的问题。如果没有,您也可以创建一个包,并将其传输到初始克隆。详情请参见hg help bundle。基本上:这将创建一个包含修订的单个文件(在您的示例中,您需要使用'--all')以确保它包含整个存储库)。然后,您可以使用wget或任何其他命令来下载该文件(其速度应该比5 Mbps快得多)。
https://stackoverflow.com/questions/25393756
复制相似问题