Git + Powershell: “baixando” todas as branch’s após clonar um repositório

Recebi a seguinte dúvida:

Preciso levar um repositório de um team project para outro, então clonei na minha máquina e apontei para um outro remote, e fiz o push… porém as branch’s do repositório de origem não foram para o destino, o que fazer?

Quando você faz um clone de um repositório, o Git não está fazendo o tracking de todas as branch’s remotas, é preciso baixar elas para poder fazer o push de tudo. Mas se o meu repositório tem dezenas delas, como executar de uma maneira rápida? Usando o poder do Powershell.

Continue lendo “Git + Powershell: “baixando” todas as branch’s após clonar um repositório”

Git – Clean

Enquanto trabalhamos no desenvolvimento de código é normal produzirmos arquivos temporários; baixarmos arquivos de pacotes, do tipo Nupackage; arquivos intermediários de compilação, que ficam na pasta ‘obj’ em uma solução .Net, por exemplo! Esses arquivos que, se não podemos dizer que são lixo, pelo menos não precisam serem versionados e eles também são recriados a qualquer momento.

Quando usamos o Git, é só adicionarmos estes arquivos no .gitignore que não iremos correr o risco de adicioná-los ao repositório, inadvertidamente. Mas… mesmo eles não sendo “trackeados” pelo controle de versão, e portanto não atrapalharem em um eventual commit, eles podem sujar o ambiente, ou simplesmente impedir um teste do tipo: os pacotes Nuget estão sendo baixados?

O que fazer? Clonar o repositório novamente? Procurar e apagar manualmente? Fazer um script para isso? Não, pois já temos a ferramenta para esse fim: o comando Clean!

Continue lendo “Git – Clean”

Git – Rebase

Depois da série de Git básico (post um, dois e três) vamos começar a nos aprofundar nos comandos e poderemos entender o poder que está na nossa mão.

No post 3, o Brian usou o comando merge para integrar o código dobranch de desenvolvimento com o master. Depois a Julia atualizou abranch dela de desenvolvimento e depois integrou o código de desenvolvimento no branch Master. O nosso objetivo era conhecer maneiras de fazer o merge e lidar com conflito no Git, por isso os dois fizeram as alterações no mesmo local. Mas e se o Brian tivesse feito uma alteração em outro local… o merge é a melhor maneira de atualizar o seu Branch? É o que vamos ver nesse post.

Continue lendo “Git – Rebase”

Git básico 3 – Merge

Na segunda parte dessa reprodução do HOL – Iniciando com Git, criamos um branch, fizemos uma alteração no código, encadeamos o um add nocommit, vimos um log mais detalhado, e mandamos tudo para o repositório! 🙂

O que vamos fazer nessa terceira parte é simular um desenvolvimento paralelo ao nosso, que é bem comum em projetos de software, e como fazer o merge desse código!

Então sem mais delongas…

Continue lendo “Git básico 3 – Merge”

Git básico 2 – Branchs

Na primeira parte dessa reprodução do HOL – Iniciando com Git, fizemos o clone do repositório criado quando o TP FabrikamCommunity foi criado, criamos uma aplicação, adicionamos ao repositório, fizemos um alteração e fizemos commit juntamente com o número do work-item 🙂

Mas dificilmente trabalhamos sozinho, e até mesmo quando estamos sozinho podemos usar técnicas para não quebrar o que está funcionando. Ou seja, podemos usar branchs para isolar o código de uma sprint, implementação de feature, ou mesmo de um teste para verificar se atualizarmos algum framework que estamos trabalhando, o código irá quebrar. Também temos que integrar código desenvolvido por outros desenvolvedores e precisamos fazer merge com o nosso código.

Já é tempo de ver tudo isso…

Continue lendo “Git básico 2 – Branchs”

Git básico…para quem está vindo do TFVC, ou Source Safe, ou SVN, …

Sexta-feira, 20 de Março, publiquei um vídeo do HOL de Git, mostrando como é a integração entre o Visual Studio, a partir do 2012 para repositórios locais e 2013 com hospedagem no TFS 2013, e o Git através de ferramentas visuais no Team Explorer. Se você não conhece a história do Git, saiba que ele foi criado na linha de comando e não em um ambiente gráfico. A Microsoft implementou apenas alguns comando no Team Explorer, basicamente os comando mais próximos do TFVC, o controle de versão centralizado. Você pode continuar utilizando a interface gráfica, aliás o Merge ficou muito bom e simples no Visual Studio, mas também pode usar a linha de comando, o que pode parecer complicado no início mas não é! Se você é adepto a diminuir o uso do mouse enquanto programa vai ver que será bem produtivo.

Continue lendo “Git básico…para quem está vindo do TFVC, ou Source Safe, ou SVN, …”