Version control 从写保护的源repo忽略错误是否安全?
我在写保护USB拇指驱动器上有一个Mercurial存储库,我想从中克隆到工作站。我原以为这是一个单向操作,但事实并非如此:在将thumb驱动器插入工作站并尝试hg clone E:\my_repo后,我收到一个错误,指示Mercurial正在尝试写入源repo。这是在Windows XP上,具有以下错误详细信息:hg.exe-写保护错误/磁盘无法写入,因为它是写保护的。请从驱动器E:中的卷中删除写保护 有趣的是,在“错误”对话框选项中选择“继续”——这实际上似乎意味着忽略错误并继续您正在执行的操作——似乎允许克隆成功完成。或者至少我看不出克隆回购协议有什么问题Version control 从写保护的源repo忽略错误是否安全?,version-control,mercurial,Version Control,Mercurial,我在写保护USB拇指驱动器上有一个Mercurial存储库,我想从中克隆到工作站。我原以为这是一个单向操作,但事实并非如此:在将thumb驱动器插入工作站并尝试hg clone E:\my_repo后,我收到一个错误,指示Mercurial正在尝试写入源repo。这是在Windows XP上,具有以下错误详细信息:hg.exe-写保护错误/磁盘无法写入,因为它是写保护的。请从驱动器E:中的卷中删除写保护 有趣的是,在“错误”对话框选项中选择“继续”——这实际上似乎意味着忽略错误并继续您正在执行的
我的问题是:1为什么Mercurial在克隆时需要向源代码写信?2.继续并忽略Mercurial无法写入源代码的内容是否确实安全?Mercurial克隆有四种方式: 硬链接:用于支持的同一卷上的克隆 复制:用于从文件系统到文件系统的克隆 pull:用于从远程计算机克隆 流:用于在高速LAN上克隆请参阅-未压缩
所有这些方法,但拉尝试锁定源库,以避免在克隆的中间可能会破坏它的任何提交。由于这对您来说并不危险,因此可以安全地忽略错误,尽管Mercurial不会对锁定失败感到高兴
或者,您可以指定-pull来执行不需要锁定的克隆