Cómo crear automáticamente copias de seguridad de compilación en Visual Studio
Si eres un equipo de desarrollo de un solo hombre, probablemente no necesites un sistema de control de versión completo, pero crear copias de seguridad de código fuente para cada versión lanzada es sin duda importante.
Al aprovechar el poder de los eventos posteriores a la compilación y un simple script por lotes, puede agregar fácilmente la capacidad de hacer que Visual Studio cree automáticamente una copia de seguridad del código fuente para cada compilación de código de lanzamiento.
Cómo funciona
Nuestra solución es simple: cuando se produce un evento de compilación exitosa, tenemos una ejecución de script por lotes que crea un archivo comprimido (etiquetado opcionalmente y con marca de tiempo) de todos los archivos en la carpeta de proyecto de Visual Studio respectiva.
Eso es. Todo lo que tienes que hacer es seguir los pasos a continuación.
Configuración de copias de seguridad de compilación automática
Primero deberá descargar y extraer el archivo de script por lotes del enlace al final del artículo. Además, necesitará la herramienta de línea de comandos 7-Zip (esto se incluye con la versión "completa" del script Project Build Backup, o puede descargarlo por separado). En nuestro ejemplo, extrajimos estos archivos al directorio "C: \ Tools", pero cualquier ubicación funcionará.
Abra sus propiedades de Visual Studio Project, haciendo doble clic en Mi proyecto en el proyecto respectivo.
En las propiedades del proyecto, vaya a la sección Compilar..
En la esquina inferior derecha, haga clic en el botón Crear eventos.
En nuestro caso, queremos hacer una copia de seguridad después de una acción de compilación exitosa. Asegúrate de que tienes la opción de ejecutar el evento posterior a la compilación "En una compilación exitosa" y luego haz clic en el botón Editar compilación posterior.
El siguiente comando crea una copia de seguridad de compilación solo para la compilación de la configuración de la versión (esto es lo que comprueba la condición IF), ya que, de manera realista, probablemente no queremos hacer una copia de seguridad de cada compilación de depuración / prueba. Además, se agregará la marca de tiempo actual (modificador / D) con el archivo de respaldo en formato de archivo 7z (/ 7z) en lugar de zip. Al agregar / T "$ (ConfigurationName)" como parámetro, estamos agregando el tipo de compilación (Release en este caso) al nombre del archivo de copia de seguridad.
SI “$ (ConfigurationName)” == “Release” CALL C: \ Tools \ ProjectBuildBackup.bat “$ (SolutionDir)” “$ (ProjectDir)” “$ (ProjectName)” / T “$ (ConfigurationName)” / D / 7z
Al usar el botón Macros, puede tener información específica del proyecto de precarga de Visual Studio, por lo que no se requiere codificación. Puede ajustar este comando según sea necesario (especialmente la ubicación del archivo por lotes), pero es probable que no sea necesario cambiar los primeros tres parámetros.
Es importante tener en cuenta que las operaciones posteriores al evento se ejecutan independientemente de la configuración del proyecto seleccionada. Esta es la razón por la que necesitamos agregar el IF "$ (ConfigurationName)" == declaración de "lanzamiento"; de lo contrario, la acción de copia de seguridad ocurriría en cada evento de construcción exitosa.
Una vez que termine su comando y lo aplique, la cadena de comandos debe aparecer en la sección Eventos posteriores a la compilación.
Tenga en cuenta que si bien el comando "LLAMAR" no es técnicamente necesario, se recomienda encarecidamente, ya que si se omite, es posible que los eventos agregados después de esto no se ejecuten..
Ahora, cada vez que ejecute una compilación / compilación con su proyecto en la configuración de la versión, verá el resultado de la operación de copia de seguridad de compilación.
[…]
Cada compilación exitosa de Release crea un nuevo archivo con marca de tiempo con la carpeta de la solución en un subdirectorio, "Builds" (que se puede definir de forma personalizada con el modificador / O si es necesario).
El contenido de cada copia de seguridad es el proyecto completo de Visual Studio (archivos de origen, configuración, binarios compilados y todo), lo que hace que esta sea una verdadera copia de seguridad en un punto en el tiempo.
No es un reemplazo para un sistema de control de versión completo
Para finalizar, solo queremos reiterar que esta herramienta no pretende reemplazar un sistema de control de versión completo. Es simplemente una herramienta útil para que los desarrolladores creen instantáneas del código fuente de su proyecto después de cada compilación.
En el caso de que tenga que volver atrás y examinar una versión anterior, tener un archivo de proyecto listo para usar (solo extraerlo a un directorio nuevo) para un momento específico de compilación puede ser realmente útil.
Campo de golf
Descargar Project Build Backup Script
Descargue la herramienta de línea de comandos 7-Zip (Nota: la utilidad 7za también se incluye con una descarga desde el script de creación de proyecto).