Início > Visual Studio / .Net > Visual Studio 2010 (Checkin, Shelve, Label)

Visual Studio 2010 (Checkin, Shelve, Label)

Muitas pessoas não conhecem a diferença entre checkin, shelve e label. Muitas vezes resolvem problemas simples e os desenvolvedores não conhecem. Então vou desmistificar essa questão.

Label: É praticamente um backup ou screenshot da versão no momento da geração. É possível aplicar labels em qualquer projeto/pasta/subpasta que esteja no VSTS. Para aplicar o label basta clicar com o botão direito do mouse e selecionar “Apply Label…” e seguir os passos:

Para baixar os arquivos de um label específico basta clicar com o botão direito no projeto e selecionar “Get Specefic Version…”

 

Checkout/Checkin: Uma das principais funções do Visual Studio Team System é controlar a versão/alteração do projeto. Para isso existe a questão de checkout (quando você indica que está fazendo uma alteração naquele arquivo) e checkin (quando você disponibiliza uma alteração feita para que outros desenvolvedores consigam pegar). Quando sua solução está conectada no repositório, automaticamente quando você altera um arquivo, ele indica que seu usuário está fazendo uma alteração no arquivo. É possível que duas pessoas façam alteração no mesmo arquivo. Se as alterações não foram feitas na mesma região, a própria ferramenta controla o merge dos arquivos, caso contrário, é necessário resolver os conflitos no merge. Indico que utilizem o DiffMerge integrado com o VS nesse caso. Para visualizar os arquivos que estão sendo alterados por você, clique com o botão direito na Solution e depois “View Pending Changes”. A própria janela tem todo o controle para fazer “Undo”, checkin, relacionamento com Work Itens (WI), controle de conflitos, etc.
Todo arquivo que vai para o repositório nessa operação entra no Build quando gerado.

 

 

Shelve/Unshelve:  A tradução é arquivar/desarquivar. Funciona exatamente como o checkin, mas as alterações não ficam disponíveis no repositório. Quando você executa um “Get last version…” esses arquivos não serão trazidos para sua solution. Quado um Shelve é executado, os arquivos continuam “checados” para seu usuário enquanto o checkin (ou “undo”) não for executado.

O comando de “Unshelve” na janela “Pending Changes” tem o mesmo conceito do Undo, mas somente para os arquivos que estão no Shelve. Podem haver vários shelves e você buscar alterações de um shelve específico.

Concluindo, o Shelve significa que você quer disponibilizar suas versão para outros desenvolvedores. Checkin significa que você terminou o desenvolvimento e essa implementação vai entrar no Build.

Qualquer dúvida avisem!
Anúncios
  1. Marcio Carvalho
    02/12/2011 às 10:12

    Gutao eu estava precisando disso ontem, e vc chegou com a solução
    EXCELENTE BLOG Brother

    Este blog esta dos diabos!!!

    Abs

    • 02/12/2011 às 11:45

      Opa… obrigado! Se precisar de alguma coisa basta entrar em contato.

  2. 02/12/2011 às 12:05

    Vale lembrar que quando criamos um Shelve, podemos selecionar o checkbox “Preserve pending changes locally”. Quando outro usuário fizer um unshelve, será feito um checkout de todos os arquivos alterados.

  3. 02/12/2011 às 12:07

    Uma coisa que a Microsoft pode melhorar nessa tela de UnShelve é a busca de usuário do TFS. Hoje você digita uma “string”. O melhor seria haver uma busca por usuário, permitindo a seleção de mais de 1 usuário.

  4. 06/12/2011 às 11:24

    Uma informação que vale a pena compartilhar:

    O usuário1 alterou o arquivo1 e fez um Shelve.
    O usuário2 alterou o arquivo1
    O usuário2 tenta executar um Unshelve do usuario1.

    Nesse caso ele recebe um erro que existem conflitos e não pode executar o unshelve.
    O melhor modelo é juntar os códigos sem utilizar a ferramenta de Shelve/Unshelve.

  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: