考虑以下结构:
我使用SVN进行开发。
完成后我会导出修订版本\qa\project
质量检查完成后,我将rsync
文件发送到暂存区。
我正在使用以下rsync
命令:
rsync -rlzv --progress --delete /qa/project/ username@server:/var/www/project/
我的问题是,每次从 svn 导出时我都会更改时间戳。
一个办法我不会使用是在我的 qa 文件夹上使用 svn 并使用update svn
.
我需要的是一种方法rsync 我的文件忽略时间戳仅更改。
我怎样才能做到这一点?
编辑#1:
可能的解决方案:
- 使用
-c
for checksum 将创建更深入的比较 - 使用
--size-only
将忽略时间戳(仅检查大小)
答案1
你检查过手册页吗rsync
?
我相信--size-only
switch 应该满足您的需要:
--仅尺寸
这修改了 rsync 用于查找需要传输的文件的“快速检查”算法,将其从默认传输大小已更改或上次修改时间已更改的文件更改为仅查找大小已更改的文件。当使用另一个可能无法准确保留时间戳的镜像系统后开始使用 rsync 时,这非常有用。