Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用tortoise svn将更改的文件导出到另一个目录_Svn_Tortoisesvn - Fatal编程技术网

使用tortoise svn将更改的文件导出到另一个目录

使用tortoise svn将更改的文件导出到另一个目录,svn,tortoisesvn,Svn,Tortoisesvn,对于我的项目,我想只导出自上次更新以来更改/添加的文件(用红色感叹号或加号标记的文件),使用tortoise svn,但是我似乎找不到执行此简单任务的正确组合 我现在做的是使用指定的修改日期执行xcopy,但是它会丢失一些文件,这些文件只是添加到文件夹中而没有修改。因为我可以得到一个更改列表,所以我看不到任何简单地将这些文件导出到部署目录的方法。这不是Ortoise的内置功能。您可能会在powershell中创建一个脚本,解析“svn st”的输出并复制文件。您最好使用svn status,然后

对于我的项目,我想只导出自上次更新以来更改/添加的文件(用红色感叹号或加号标记的文件),使用tortoise svn,但是我似乎找不到执行此简单任务的正确组合


我现在做的是使用指定的修改日期执行xcopy,但是它会丢失一些文件,这些文件只是添加到文件夹中而没有修改。因为我可以得到一个更改列表,所以我看不到任何简单地将这些文件导出到部署目录的方法。

这不是Ortoise的内置功能。您可能会在powershell中创建一个脚本,解析“svn st”的输出并复制文件。

您最好使用svn status,然后查看文件代码以确定要复制的文件


请参阅。

检查修改对话框,按状态排序。按住Shift键单击或按住Ctrl键单击可选择所有状态为“已修改”和“已添加”的对象。 然后只需将文件从“检查修改”对话框右键拖动到资源管理器中的另一个文件夹

另一种方式(如果您已经提交了更改): 在“显示日志”对话框中,选择所有具有有趣更改的修订。在下方窗格中,按住shift键并选择所有条目,单击鼠标右键,选择“另存为”

还有另一种方式:
使用存储库浏览器,找到第一个url(假设要导出两个标记之间更改的所有内容,例如版本1和版本2),右键单击“标记以进行比较”。找到第二个url,右键单击“比较url”。在下面的“已更改的文件”对话框中,选择所有文件,单击鼠标右键,选择“将选择导出到…”。

在“检查修改”对话框中,选择所有要导出的文件,然后单击鼠标右键并选择导出

这是一个更好的解决方案,特别是如果您想导出子目录中的文件。(检查修改中的拖动选项将展平目录结构)。

来自:

从工作副本导出的另一种方法是右拖动工作副本 将文件夹复制到其他位置并选择。。。 上下文菜单→ SVN在此处导出更改的项目。。。 第三种选择仅用于出口 已修改项目,但保留文件夹结构

另一个选项。

假设您上次从存储库版本85部署应用程序。经过几周的开发,该存储库现在已升级到第178版

  • 使用TortoiseSVN,右键单击您的工作文件夹并选择 从陆龟菜单中选择“显示日志”
  • 单击上次发布的修订(本例中为#85) 按住Ctrl键的同时单击标题修订(或您想要发布的任何修订版,即#178),以便旧修订版和新修订版都被删除 突出显示
  • 右键单击任一突出显示的修订,然后选择 “比较修订。”这将打开一个对话框窗口,列出所有修订 新建/修改的文件
  • 从该列表中选择所有文件(Ctrl+a),然后右键单击 突出显示文件并选择“将所选内容导出到…”
  • 系统将提示您输入保存更新文件和SVN的位置 将导出它们,并保留目录结构。你 然后可以为您的客户压缩此文件,将其传输到您的主机或 无论您通常如何部署应用程序

  • 太好了,谢谢!我从来没有想过简单地拖动这些文件:)您也可以从更改中创建一个修补程序文件。您知道添加此上下文菜单选项的TortoiseSVN的哪个版本吗?我右键单击此修改对话框(版本1.7.10.23359,svn 1.7.7)中没有导出选项,这是执行此操作的最快方法。伟大的如果您想将导出的文件粘贴到其他地方,那么维护文件夹结构是非常好的,回答得非常好!这真的很方便。值得注意的是,为了导出新文件,应在拖动之前将其添加到SVN(即,仅导出“已更改”和“已添加”的文件,如所选答案中所述)。@EmanueleBellini是的。在我看来,如果在“SVN导出”中包含“新”的文件(即尚未实际添加到SVN中),这将是违反直觉的。