Как да създадете автоматично създаване на резервни копия в Visual Studio

Съдържание:

Как да създадете автоматично създаване на резервни копия в Visual Studio
Как да създадете автоматично създаване на резервни копия в Visual Studio

Видео: Как да създадете автоматично създаване на резервни копия в Visual Studio

Видео: Как да създадете автоматично създаване на резервни копия в Visual Studio
Видео: How to get a Rust effect paint finish with patina 101 - YouTube 2024, Април
Anonim
Ако сте екип за развитие на един човек, най-вероятно нямате нужда от цялостна система за контрол на версиите, но създаването на резервни копия на всяка издавана версия е несъмнено важно.
Ако сте екип за развитие на един човек, най-вероятно нямате нужда от цялостна система за контрол на версиите, но създаването на резервни копия на всяка издавана версия е несъмнено важно.

Използвайки силата на събитията след изграждането и простият скрипт за партиди, лесно можете да добавите възможността Visual Studio автоматично да създаде резервно копие на изходния код за всяко изграждане на код за пускане.

Как работи

Нашето решение е просто: всеки път, когато се случи събитие за успешно изграждане, имаме партиден скрипт, който създава компресиран архив (по избор маркиран и маркиран с време) на всички файлове в съответната папка на проекта Visual Studio.

Това е. Всичко, което трябва да направите, е да следвате стъпките по-долу.

Създаване на резервни копия за автоматично създаване

Първо ще трябва да изтеглите и извлечете файла с партида скрипт от връзката в долната част на статията. Освен това ще ви е необходим инструмент за 7-Zip командния ред (това е включено в "пълната" версия на скрипта Project Build Backup или можете да го свалите отделно). В нашия пример ние извличахме тези файлове в директорията "C: Tools", но всяко местоположение ще работи.

Отворете свойствата на проекта Visual Studio, като кликнете два пъти върху "Моят проект" в съответния проект.

В свойствата на проекта отидете в секцията Компилация.
В свойствата на проекта отидете в секцията Компилация.
В долния десен ъгъл кликнете върху бутона Създаване на събития.
В долния десен ъгъл кликнете върху бутона Създаване на събития.
В нашия случай искаме да направим резервно копие след успешно съставяне на действия. Уверете се, че имате опцията да изпълните събитието след изграждането "On successful build" и след това да кликнете върху бутона Edit Post-build.
В нашия случай искаме да направим резервно копие след успешно съставяне на действия. Уверете се, че имате опцията да изпълните събитието след изграждането "On successful build" и след това да кликнете върху бутона Edit Post-build.
Командата по-долу създава резервно копие само за компилацията на конфигурацията Release (това е, което проверява състоянието на IF), тъй като, реалистично, вероятно не искаме да направим резервно копие на всяко изграждане на Debug / тестване. Освен това, ще бъде добавен текущия маркер (/ D switch), като архивираният файл е в 7z файлов формат (/ 7z), за разлика от zip. Като добавим / T "$ (ConfigurationName)" като параметър, ние прибавяме типа build (Release в този случай) към името на архивния файл.
Командата по-долу създава резервно копие само за компилацията на конфигурацията Release (това е, което проверява състоянието на IF), тъй като, реалистично, вероятно не искаме да направим резервно копие на всяко изграждане на Debug / тестване. Освен това, ще бъде добавен текущия маркер (/ D switch), като архивираният файл е в 7z файлов формат (/ 7z), за разлика от zip. Като добавим / T "$ (ConfigurationName)" като параметър, ние прибавяме типа build (Release в този случай) към името на архивния файл.

IF “$(ConfigurationName)” == “Release” CALL C:ToolsProjectBuildBackup.bat “$(SolutionDir)” “$(ProjectDir)” “$(ProjectName)” /T “$(ConfigurationName)” /D /7z

С помощта на бутона "Макроси" можете да разполагате с предварително зададена информация за проекта, така че да не се изисква твърд код. Можете да коригирате тази команда, ако е необходимо (особено местоположението на партидния файл), но първите три параметъра най-вероятно няма да е необходимо да се променят.

Важно е да имате предвид, че операциите след събитието се изпълняват независимо от избраната конфигурация на проекта. Ето защо трябва да добавим изявлението IF "$ (ConfigurationName)" == "Release" - в противен случай архивирането ще се извърши на всеки успешно изграждане събитие.

След като завършите командата си и я приложите, командният низ трябва да се появи в секцията Post-build events.
След като завършите командата си и я приложите, командният низ трябва да се появи в секцията Post-build events.

Обърнете внимание, че докато командата "CALL" не е технически необходима, тя е силно препоръчителна, тъй като ако това е пропуснато, тогава всички събития, добавени след това, може да не се изпълняват.

Сега, когато изпълнявате компилацията / изграждането с вашия проект в конфигурацията Release, ще видите изхода от операцията за създаване на резервни копия.
Сега, когато изпълнявате компилацията / изграждането с вашия проект в конфигурацията Release, ще видите изхода от операцията за създаване на резервни копия.
[…]
[…]
Всяко успешно изграждане на Release създава нов архив с времева маркировка с папката за решение в поддиректория "Builds" (която може да бъде дефинирана по избор с превключвател / O, ако е необходимо).
Всяко успешно изграждане на Release създава нов архив с времева маркировка с папката за решение в поддиректория "Builds" (която може да бъде дефинирана по избор с превключвател / O, ако е необходимо).
Съдържанието на всеки архив е пълният проект на Visual Studio - изходни файлове, конфигурационни настройки, компилирани бинарни файлове и всичко останало - което прави това истинско архивиране във времето.
Съдържанието на всеки архив е пълният проект на Visual Studio - изходни файлове, конфигурационни настройки, компилирани бинарни файлове и всичко останало - което прави това истинско архивиране във времето.
Image
Image

Не е заместител на система за контрол на пълната версия

В заключение, ние просто искаме да потвърдим, че този инструмент не е предназначен да замени пълна разпенена система за контрол на версиите. Това е просто полезен инструмент за разработчиците да създават моментни снимки на изходния код на проекта след всяка компилация.

В случай, че някога се наложи да се върнете и да разгледате предишна версия, имате готов за употреба файл (само за извличане на нова директория) за момент в компилацията, който наистина може да ви помогне.

звена

Изтегляне на проекта Build Backup Script

Изтегляне на 7-Zip Command Line Tool (Забележка - инструмент 7za също е свързан с изтегляне от скрипта Project Build Backup)

Препоръчано: