我有一个关于 unix 中的 rsync 命令的问题。
它是否将一些配置不可见文件保存到目录中?它如何知道需要添加或不需要添加哪些文件?
还是只是逐个文件检查?
我问这个是因为我打算将所有文件(但不是根目录)复制到另一个文件夹(svn 工作副本)。
谢谢
rsync 不使用任何不可见的文件来记住它有/没有复制的内容。每次运行 rsync 命令时,它都会根据目标检查源(根据您在 rsync 命令行上指定的选项)并相应地复制文件。
如果您想明确忽略/不复制文件/文件夹,您可以使用--exclude(和相关)选项来做到这一点。检查 rsync 联机帮助页以了解可用内容的规则详细信息。
除了@Richm的回答之外, Rsync 默认使用时间戳和大小(就像 git 一样)来判断文件是否已更改,并且 rsync 应该更新它。您可以使用--checksum
基于校验和而不是时间戳进行检查的选项。
-c, --checksum skip based on checksum, not mod-time & size
Run Code Online (Sandbox Code Playgroud)