对于一般的工作文件,用版本控制系统可以完成,我的源代码都是用bazaar来管理,以前使用SVN的。
有些文件我不纳入版本管理,比如我的maven仓库,我没有服务器,所以没有maven代理。这些jar包我不想把它纳入版本控制。换机器的时候我也不希望再从网上下载一次。以前我都是把我的.m2文件夹拷贝到移动硬盘,再从移动硬盘拷到要用的机器上。
XP的拷贝实在不适合拷贝大量的小文件,而且每次都覆盖也没有必要。所以想用增量拷贝工具。想到了rsync以前用过,好像在路径名太长是会出问题,而且cygwin的rsync对于中日英混合的文件名处理也会出问题。
由于一直用Java开发,想到ant有一个sync的任务,反正ant在我的每台机器上都是必备的。
所以利用它来同步我的文件,应该是个理想的方案。
这是我的build文件
<?xml version="1.0" encoding="UTF-8"?>
<project name="nexus" default="sync">
<target name="check" description="check dest property." >
<condition property="run">
<and>
<isset property="dest" />
</and>
</condition>
</target>
<target name="usage" depends="check" description="usage of this build file" unless="run">
<echo>
ant -Ddest=<destPath>
</echo>
</target>
<target name="sync" depends="usage" if="run" description="Sync files between usb disk">
<echo message="sync to ${dest}" />
<sync todir="${dest}" verbose="true" granularity="500">
<fileset dir="."/>
</sync>
</target>
</project>
没有评论:
发表评论