cp -r在复制git repo时OSX上的速度很慢

时间:2017-08-10 18:58:20

标签: git macos cp

我正在尝试使用~/work/repo将git repo ~/work/repo1复制到cp -r repo repo1但是速度非常慢。

我正在运行osx 10.12.5并使用鱼壳(虽然我怀疑这很重要)。

回购比较大,约800mb。为什么克隆回购比用cp复制它更快?

3 个答案:

答案 0 :(得分:1)

我想说这可能是由'cp'引起的,它在复制文件时不会创建硬链接。而不是硬链接整个文件的内容需要再次读取和写入磁盘。当在同一个HDD上完成这些操作时,速度也会增加。

'man cp'建议使用'pax'实用程序,它只创建硬链接而不是复制整个文件内容。有关详细信息,请参阅“man pax”。

       $ mkdir newdir
       $ cd olddir
       $ pax -rw . ../newdir

答案 1 :(得分:0)

如果没有pax:

<html>
      <head>
       <script>
         var employee = {
            empname: "David",
            department : "Finance",
            id : 002,
            details : function() {
                
                this.empname = "Sam";
               return this.empname + " with Department " + this.department;
            }
         };

         document.write(employee.empname);
         </script>
       </head>
    </html>

答案 2 :(得分:0)

如果您使用的是APFS,它支持克隆文件。这类似于硬链接,但具有写时复制的语义。除非必须复制任何数据,否则它非常快。因此,请cp -ac repo repo1