25Aug
Hvis du er et udviklersteam for en mand, har du sandsynligvis ikke virkelig brug for et fuldt styret versionsstyringssystem, men det er uden tvivl vigtigt at oprette kildekodebackups til hver udgivet version.
Ved at udnytte kraften i post-build-arrangementer og et simpelt batch script, kan du nemt tilføje evnen til at have Visual Studio automatisk oprette en kildekode-backup for hver frigivelseskodebygning.
Sådan virker det
Vores løsning er enkel: Når der opstår en vellykket build-event, har vi et batch script-løb, der opretter et komprimeret arkiv( eventuelt mærket og tidsstemplet) for alle filer i den respektive Visual Studio-projektmappe.
Det er det. Alt du skal gøre er at følge trinene herunder.
Opsætning af automatiske buildbackups
Først skal du downloade og udpakke batch script filen fra linket nederst i artiklen. Derudover skal du bruge 7-Zip kommandolinjeværktøjet( dette er inkluderet i en "fuld" version af Project Build Backup scriptet, eller du kan downloade det separat).I vores eksempel udpakket vi disse filer til mappen "C: \ Tools", men ethvert sted vil fungere.
Åbn dine Visual Studio Project egenskaber ved at dobbeltklikke på mit projekt under det respektive projekt.
I projektegenskaberne skal du gå til afsnittet Kompilering.
Klik i nederste højre hjørne på knappen Byg begivenheder.
I vores tilfælde ønsker vi at lave en sikkerhedskopi efter en vellykket kompileringshandling. Sørg for at have mulighed for at køre post-build-arrangementet "On successful build", og klik derefter på knappen Edit Post-build.
Kommandoen nedenfor opretter kun en build-backup til kompilering af frigivningskonfigurationen( dette er hvad IF-betingelsen kontrollerer), som vi realistisk nok ikke ønsker at lave en sikkerhedskopi af hver Debug / test-build. Derudover vil den aktuelle tidsstempel blive vedhæftet( / D-switch) med backupfilen i 7z filformat( / 7z) i modsætning til zip. Ved at tilføje / T "$( ConfigurationName)" som parameter, tilføjer vi bygnings type( Release i dette tilfælde) til navnet på backupfilen.
IF "$( ConfigurationName)" == "Release" CALL C: \ Værktøjer \ ProjectBuildBackup.bat "$( SolutionDir)" "$( ProjectDir)" "$( ProjectName)" / T "$( ConfigurationName)" / D/ 7z
Ved hjælp af makroknappen kan du have Visual Studio-præfill-projektspecifikke oplysninger, så der kræves ingen hardcoding. Du kan justere denne kommando efter behov( specielt placeringen af batchfilen), men de tre første parametre vil sandsynligvis ikke blive ændret.
Det er vigtigt at huske på, at post-event-operationer kører uanset den valgte projektkonfiguration. Derfor er vi nødt til at tilføje IF-sætningen "$( ConfigurationName)" == "Release" - ellers vil sikkerhedskopieringen ske på hver succesfuld build-begivenhed.
Når du er færdig med din kommando og anvender den, skal kommandostrengen vises i afsnittet Post-build events.
Bemærk, at mens kommandoen "CALL" ikke er teknisk krævet, anbefales det stærkt, at hvis dette udelades, kan eventuelle begivenheder, der tilføjes efter dette, muligvis ikke udføres.
Nu når du kører en kompilering / opbygning med dit projekt i udgivelseskonfigurationen, vil du se output fra build backup operationen.
[...]
Hver succesfrit Release build opretter et nyt tidsstemplet arkiv med løsningsmappen i en undermappe, "Builds"( som kan tilpasses med / O-kontakten, hvis det er nødvendigt).
Indholdet af hver backup er det fulde Visual Studio-projekt - kildefiler, konfigurationsindstillinger, kompilerede binære filer og alle - hvilket gør dette til et rigtigt tidspunkt i backup.
Ikke en erstatning for et komplet versionskontrolsystem
Til sidst vil vi blot gentage, at dette værktøj ikke er beregnet til at erstatte et fuldt styret versionsstyringssystem. Det er simpelthen et nyttigt værktøj for udviklere at oprette snapshots af projektets kildekode efter hver samling.
I tilfælde af at du nogensinde skal gå tilbage og undersøge en tidligere version, har du en klar til brug( kun uddrag til en ny mappe) projektfil til en tidssamling kan virkelig komme til nytte.
Links
Download Projekt Byg Backup Script
Download 7-Zip Command Line Tool( Bemærk - 7za-værktøjet er også bundtet med en download fra Project Build Backup scriptet)