如何在Visual Studio中自动创建构建备份

image

如果你是一个人的开发团队,你可能不需要一个完整的版本控制系统,但是为每个发布的版本创建源代码备份无疑是重要的。

通过利用后构建事件和简单批处理脚本的强大功能,您可以轻松添加使Visual Studio自动为每个发布代码构建创建源代码备份的功能。

怎么运行的

我们的解决方案很简单:每当成功构建事件发生时,我们都有一个批处理脚本运行,它为相应的Visual Studio项目文件夹中的所有文件创建一个压缩归档(可选地标记和加时间戳)。

而已。 所有你需要做的是按照以下步骤。

设置自动构建备份

首先,您需要从文章底部的链接下载并提取批处理脚本文件。 此外,您将需要7-Zip命令行工具(这包括在“完整”版本的Project Build Backup脚本中,或者您可以单独下载它)。 在我们的示例中,我们将这些文件提取到目录“C:\ Tools”,但任何位置都可以工作。

通过双击相应项目下的“我的项目”,打开Visual Studio项目属性。

image

在项目属性中,转到编译部分。

image

点击右下角的Build Events按钮。

image

在我们的示例中,我们希望在成功的编译操作后进行备份。 确保您可以选择运行后构建事件“成功构建”,然后单击编辑后构建按钮。

image

下面的命令仅仅为Release配置的编译创建了一个构建备份(这是IF条件检查的),实际上,我们可能不想对每个Debug /测试构建进行备份。 此外,当前时间戳将被附加(/ D开关),备份文件为7z文件格式(/ 7z),而不是zip。 通过添加/ T“$(ConfigurationName)”作为参数,我们将附件的构建类型(在这种情况下为Release)附加到备份文件的名称。

如果“$(ConfigurationName)”==“Release”CALL C:\ Tools \ ProjectBuildBackup.bat“$(SolutionDir)”“$(ProjectDir) 7z

使用宏按钮,您可以有Visual Studio预填充项目特定信息,因此不需要硬编码。 您可以根据需要调整此命令(特别是批处理文件的位置),但前三个参数可能不需要更改。

请务必记住,无论选择的项目配置如何,事件后操作都会运行。 这就是为什么我们需要添加IF“$(ConfigurationName)”==“释放”的声明-否则对每一个成功构建事件将进行备份操作。

image

一旦你完成你的命令并应用它,命令字符串应该出现在后构建事件部分。

请注意,虽然“CALL”命令在技术上不是必需的,但强烈建议,因为如果省略,则此后添加的任何事件可能无法执行。

image

现在,无论何时在Release配置中使用您的项目运行compile / build,您都将看到构建备份操作的输出。

image

[...]

image

每个成功的版本构建使用解决方案文件夹在子目录“Builds”(可以根据需要使用/ O开关自定义)中创建新的带时间戳的归档。

image

每个备份的内容是完整的Visual Studio项目 - 源文件,配置设置,编译的二进制文件和所有 - 这使得这是一个真正的时间点备份。

image

不是完整版本控制系统的替代品

最后,我们只想重申,这个工具不是要取代一个完整的版本控制系统。 它只是一个有用的工具,开发人员在每次编译之后创建项目源代码的快照。

如果你必须返回并检查一个以前的版本,有一个准备使用(只是提取到一个新的目录)项目文件的时间点编译真的可以派上用场。

链接

下载项目构建备份脚本

下载7-Zip的命令行工具 (注- 7za实用还捆绑了从项目下载构建备份脚本)

赞 (0)
分享到:更多 ()