Usando Git no Windows e Mac

Nós aqui na Touch utilizamos Ubuntu diariamente para realizar nossas tarefas: conectar por ssh nos servidores de produção, fazer instalações remotas, mudar e conceder permissões de arquivos e diretórios, utilizar o maven para buildar os projetos, o npm para os projetos javascript e o Git para controlar o versionamento dos projetos, entre outras infinitas tarefas.

Apesar de utilizar o Linux na maior parte dos nossos ambientes, em alguns casos temos que trabalhar com os sistemas operacionais Windows e Mac. Na tentativa de encontrar a melhor maneira de se trabalhar com o Git nestes ambientes, encontramos algumas soluções bem legais, como cygwin, por exemplo. Mas a melhor experiência que tivemos foi com o SourceTree da Atlassian.

Esta aplicação é um cliente Git gratuita e completa que foi construída para Windows e Mac, e que oferece o ambiente completo para trabalhar com o controle de versão em apenas alguns cliques.

O primeiro passo é baixar a última versão da aplicação no site oficial. Este executável irá instalar na sua máquina a aplicação SourceTree e mais duas ferramentas importantes embarcadas: o PuTTY e o Portable Git.

O PuTTY é um terminal de simulação open source que permite estabelecer uma conexão ssh com servidores Linux. É bastante utilizada por administradores de redes, desenvolvedores e pessoas da área de TI que precisa trabalhar em uma máquina Windows.

Já o Portable Git, como o próprio nome já indica, é uma versão portátil da ferramenta Git. Elas duas são incorporadas ao SourceTree para que o usuário não tenha que configurar isto manualmente. Mas, caso sua máquina já possua estas aplicações instaladas, ele utilizará as suas e as versões embarcadas serão ignoradas.

Ao abrir a aplicação pela primeira vez, uma interface semelhante a esta irá abrir:

Vamos entender cada uma das áreas:

Configurações: É aqui onde o usuário encontrará as opções de configuração da aplicação (seja nas abas ou na engrenagem) e das ferramentas embutidas (PuTTY, Git). Além disso, os botões que estão abaixo da barra de opções oferecem o workflow básico do git: push, pull, fetch, merge, tags, etc. Pra finalizar, um ponto interessante é o botão Terminal. Caso o usuário queira trabalhar com a linha no comando, também é possível!

Repositórios: O SourceTree possui suporte para se integrar aos principais serviços de Git disponíveis: GitHub e o Bitbucket (também da Atlassian). Com uma conta em qualquer um destes serviços, é possível trabalhar com os repositórios de forma bem intuitiva dentro do SourceTree (levando em conta que os serviços também estejam adequadamente configurados).

Git Flow: Nesta seção é possível acompanhar o workflow de commits e branchs do nosso repositório. Nesta imagem os commits estão um em cima do outro, mas caso houvesse uma branch e pontos de merge, isso ficaria muito visível. Note também que pra cada commit, temos suas informações básicas: descrição (mensagem), data, autor e seu identificador único.

Detalhes do Commit: Para cada um dos commits no Git Flow, os detalhes são acompanhados nesta área. Fica visível todas as alterações feitas no commit assim como é possível comparar versões antigas.

As principais configurações do programa estão em Ferramentas > Opções

Repare que aqui temos algumas abas interessantes:

  • Geral: Opções gerais da aplicação que envolvem desde a alteração dos arquivos de configuração do Git, as configurações de SSH (PuTTY), até as opções de encoding, fonte, entre outras.
  • Diff: Aqui se encontram as configurações do responsável que faz a diferença entre dois arquivos. É possível utilizar o próprio SourceTree para isso, mas você pode apontar para uma ferramenta externa, como por exemplo, o Meld.
  • Git: Configurações do Git. As configurações aqui são válidas somente para o Git embarcado.
  • Mercurial: Não vamos entrar em detalhes, mas o Mercurial é uma ferramenta concorrente ao Git, ou seja, é uma alternativa para controle de versões. O SourceTree é bem completo para o Mercurial assim como é para o Git.
  • Ações Personalizadas: É possível adicionar algumas ações personalizadas para a ferramenta através deste menu. Por exemplo: Imagine que você utilize um script em bash que faz várias coisas automáticas no seu commit antes de enviar para o master. Aqui você pode subir este script e configurá-lo para rodar quando necessário.
  • Autenticação: Controle de logins e senhas.
  • Rede: Configurações de servidor proxy. Elas são válidas somente para conexões HTTP(S) e não SSH.

Utilizamos a ferramenta sempre que precisamos trabalhar com ambientes Windows e estamos bastante satisfeitos. O SourceTree facilitou nosso trabalho de configuração e simplificou bastante o uso do Git através da interface gráfica, principalmente para os iniciantes.

Gostou? Não se esqueça de Recomendar e Compartilhar!

Show your support

Clapping shows how much you appreciated Diego Martins de Pinho’s story.