问题在于:
遍历所有文件和子文件夹,将所有内容复制到另一个位置。
我可以想到一些非常多毛的方法来做到这一点,但我想知道是否有人知道一个真正的简单功能,以节省我一点时间?感谢。
答案 0 :(得分:20)
您可以使用svn export
命令。它将使用工作副本的内容(或存储库中的修订)填充目标文件夹。
答案 1 :(得分:5)
使用rsync和 --exclude
开关。
......虽然在这种特定情况下,更好的选择是svn export
答案 2 :(得分:3)
我们有时会使用Beyond Compare(http://beyond-compare.softonic.com/):选择根源目录和目标源目录,排除.svn并进行同步。如果您需要再次执行此操作,这非常有用:将设置保存为项目。
答案 3 :(得分:3)
正如其他人所说,svn export。
但是,您也可以使用Xcopy和排除开关轻松完成此操作,请参见此处:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/xcopy.mspx?mfr=true
在这里:http://commandwindows.com/xcopy.htm
第二个链接对排除开关有更好的描述。
答案 4 :(得分:1)
所以我最近快速而肮脏的做法是使用python:
for root, dirs, files in os.walk(inRootDirArg):
for d in dirs:
if d.startswith('.'):#excludes directories that start with '.'
continue
...<logic to move your desired directories>...
此解决方案忽略以“。”开头的任何目录,但如果我需要更具体,则不难修改它以省略.svn目录。
答案 5 :(得分:0)
如果您使用的是TortoiseSVN,请使用导出...
答案 6 :(得分:0)
使用Cmd
Dir/a-d/s/b >>1.txt
并使用AutoIt读取文件,更好地使用_FileReadToArray,并在循环中检查文件路径是否有'.svn'in
答案 7 :(得分:0)
如果不需要自动,您可以将xcopy与排除文件一起使用:
xcopy "..\source\" "..\destination\" /E /Y /R /exclude:exclude.txt
exclude.txt应包含:
\.svn\