25Aug
Se você é uma equipe de desenvolvimento de um homem, você provavelmente não precisa realmente de um sistema de controle de versão soprado completo, mas criar backups de código-fonte para cada versão lançada é, sem dúvida, importante.
Ao alavancar o poder dos eventos pós-compilação e um script de lote simples, você pode facilmente adicionar a capacidade de o Visual Studio criar automaticamente um backup de código-fonte para cada compilação de código de lançamento.
Como funciona
Nossa solução é simples: sempre que ocorre um evento de construção bem-sucedido, temos uma execução de script em lote que cria um arquivo compactado( opcionalmente marcado e timestamped) de todos os arquivos na respectiva pasta de projeto do Visual Studio.
É isso. Tudo o que você precisa fazer é seguir as etapas abaixo.
Configurando backups de compilação automática
Primeiro, você precisará baixar e extrair o arquivo de script do lote do link na parte inferior do artigo. Além disso, você precisará da ferramenta de linha de comando 7-Zip( esta é incluída com uma versão 'completa' do script Project Build Backup, ou você pode baixá-la separadamente).No nosso exemplo, extraímos esses arquivos para o diretório "C: \ Tools", mas qualquer local funcionará.
Abra suas propriedades do Visual Studio Project, clicando duas vezes em My Project no respectivo projeto.
Nas propriedades do projeto, vá para a seção Compilar.
No canto inferior direito, clique no botão Construir Eventos.
No nosso caso, queremos fazer um backup após uma ação de compilação bem-sucedida. Certifique-se de ter a opção de executar o evento pós-compilação "Em compilação bem-sucedida" e, em seguida, clique no botão Editar pós-compilação.
O comando abaixo cria um backup de compilação apenas para a compilação da configuração Release( isto é o que a condição IF verifica) como, de forma realista, provavelmente não queremos fazer um backup de cada compilação Debug / test. Além disso, o timestamp atual será anexado( / D switch), sendo o arquivo de backup no formato de arquivo 7z( / 7z) em oposição ao zip. Ao adicionar o / T "$( Nome da Configuração)" como parâmetro, adicionamos o tipo de compilação( Lançamento neste caso) ao nome do arquivo de backup.
IF "$( Nome da Configuração)" == "Liberar" CALL C: \ Tools \ ProjectBuildBackup.bat "$( SolutionDir)" "$( ProjectDir)" "$( ProjectName)" / T "$( Nome da Configuração)" / D/ 7z
Usando o botão Macros, você pode ter informações específicas do projeto do Visual Studio prefil para que não seja necessária nenhuma codificação rígida. Você pode ajustar esse comando conforme necessário( especialmente a localização do arquivo em lote), mas os três primeiros parâmetros provavelmente não precisarão ser alterados.
É importante ter em mente que as operações pós-evento funcionam independentemente da configuração do projeto selecionada.É por isso que precisamos adicionar a declaração IF "$( ConfigurationName)" == "Release" - caso contrário, a ação de backup ocorrerá no todo evento de compilação bem-sucedido .
Depois de terminar seu comando e aplicá-lo, a seqüência de comando deve aparecer na seção Eventos pós-compilação.
Observe que, embora o comando "CALL" não seja tecnicamente necessário, é altamente recomendado, como se isso fosse omitido, então qualquer evento adicionado depois disso não pode ser executado.
Agora, sempre que você executa uma compilação / compilação com seu projeto na configuração Release, você verá a saída da operação de backup de compilação.
[...]
Cada versão de lançamento bem-sucedida cria um novo arquivo timestamped com a pasta de solução em um subdiretório, "Builds"( que pode ser personalizado definido com a opção / O, se necessário).
O conteúdo de cada backup é o projeto completo do Visual Studio - arquivos de origem, configurações, binários compilados e tudo - o que faz deste um verdadeiro ponto no backup.
Não é um substituto para um sistema de controle de versão completo
No final, queremos reiterar que essa ferramenta não se destina a substituir um sistema de controle de versão soprado completo.É simplesmente uma ferramenta útil para os desenvolvedores criar instantâneos do código-fonte do projeto após cada compilação.
No caso de você ter que voltar e examinar uma versão anterior, ter um arquivo de projeto pronto para usar( apenas extrair para um novo diretório) para uma compilação ponto a tempo pode realmente ser útil.
Links
Download Project Build Backup Script
Baixar 7-Zip Command Line Tool( Nota - o utilitário 7za também é fornecido com um download do script Project Build Backup)