Introdução ao EGit

Introdução ao EGit

1. Visão geral

Neste artigo, vamos explorar EGit - uma evolução da biblioteca JGit para Eclipse.

2. Configuração EGit

Durante o artigo, usaremos as seguintes ferramentas:

  • Eclipse Neon.3 versão 4.6.3

  • EGit plugin versão 4.8

2.1. Instalando EGit no Eclipse

Começando com o Eclipse Juno, o EGit está incluído no próprio Eclipse.

Para versões anteriores do Eclipse, podemos instalar o plug-in por meio deHelp → Install New Softwaree fornecer a URLhttp://download.eclipse.org/egit/updates:

image

2.2. Identificando um Commiter

O Git precisa acompanhar o usuário atrás de uma confirmação, portanto, devemos fornecer nossa identidade quando fazemos confirmações via EGit.

Isso é feito por meio dePreferences → Team → Git → Configuratione clicando emAdd Entry para incluir informações parauser.nameeuser.email:

image

3. Repositórios

3.1. Ver Repositórios

O EGit vem com a visão Repositórios que nos permite:

  • Navegue no nosso repositório local

  • Adicionar e inicializar repositórios locais

  • Remover repositórios

  • Clonar repositórios remotos

  • Confira projetos

  • Gerenciar filiais

Para abrir a visualização Repositórios, clique emWindow → Show View → Other → Git → Git Repositories:

image

3.2. Criando um Novo Repositório

Precisamos criar um projeto e clicar com o botão direito nele para escolherTeam → Share Project,eCreate.

A partir daqui, selecionamos o diretório do repositório e clicamos emFinish:

image

3.3. Clonando um Repositório

Podemos clonar um repositório de um servidor git remoto para o nosso sistema de arquivos local.

Vamos paraFile → Import… → Git → Projects from Git → Next → Clone URI → Next,, então a ** seguinte janela será mostrada:

image

Também podemos abrir a mesma janela a partir do botão da barra de ferramentasClone Remote Repository na guia de visualizaçãoRepositories.

O Git suporta vários protocolos, como https, ssh, git e etc. Se colarmos o URI do repositório remoto, outras entradas serão preenchidas automaticamente.

4. Ramos

Existem dois tipos de ramos com os quais lidaremos:

  • Filial local

  • Filial de rastreamento remoto

4.1. Criando Filial Local

Podemos criar uma nova filial local clicando emTeam → Repository → Switch to → New Branch:

image

Podemos escolher a filial de rastreamento remoto a partir da qual basear nossa filial local. Adicionar configuração upstream às nossas novas filiais locais simplificará a sincronização das alterações locais com as remotas.

Recomenda-se verificar a opção na caixa de diálogoConfigure upstream for push and pull.

Outro método para abrir a nova caixa de diálogo de ramificação clicando com o botão direito nas ramificações doRepositories view → Switch To → New Branch

4.2. Verificando a filial

Na visualizaçãoRepositories, clique com o botão direito no nome do ramo e clique emCheck Out:

image

Ou clique com o botão direito no projeto e selecioneTeam → Switch To → select the branch name:

image

5. Rastreando arquivos com Git

5.1. Rastreando alterações

Sinais de interrogação aparecem em arquivos que ainda não estão sob o controle do Git. Podemos rastrear esses novos arquivos clicando com o botão direito neles e selecionandoTeam → Add to Index.

A partir daqui, o decorador deve mudar para(+) sign.

5.2. Comprometendo as alterações

Queremos confirmar as alterações nos arquivos rastreados. Isso é feito clicando com o botão direito nesses arquivos e escolhendoTeam → Commit:

image

Por padrão, o autor e o committer são obtidos do arquivo.gitconfig em nosso diretório inicial.

Podemos inserir uma mensagem de confirmação para explicar as alterações. Além disso, clicando no íconeAdd Signed-off-by no canto superior direito, podemos adicionar uma tagSigned-off-by.

5.3. Inspecionando História

Podemos verificar o histórico de um arquivo clicando nele com o botão direito e escolhendoTeam → Show in History.

Um diálogo de histórico mostrará todas as alterações confirmadas do arquivo inspecionado:

image

Podemos abrir as últimas alterações confirmadas na visualização de comparação clicando no ícone do modo de comparação no canto superior direito da guia de histórico e, em seguida, clicando duas vezes no nome do arquivo (aqui está um exemplo:HelloEgit/src/HelloEgitClass.java) na lista de arquivos :

image

5.4. Empurrando Mudanças para o Repositório Remoto

Para empurrar nossas mudanças, precisamos ter um repositório Git remoto.

EmTeam → Remote → Push, podemos inserir a URL https do novo repositório remoto Git em um assistente:

image

Os próximos passos são:

  • Escolha oAdd All Branches Spec para mapear nomes de branch local para os mesmos nomes de branch no repositório de destino

  • Pressione o botão de confirmação - o assistente mostrará uma visualização dos arquivos alterados

  • Finalmente, clicamos emFinish para enviar nosso repositório para o local remoto.

Se tivermos definido a Configuração Upstream da seção 4.1, esse diálogo de configuração não será mostrado e o envio será muito mais fácil.

5.5. Buscando do Upstream

Se estivermos trabalhando com uma filial local baseada em uma filial de rastreamento remoto, agora podemos buscar alterações no upstream.

Para buscar do upstream, clicamos com o botão direito emprojecte selecionamosTeam → Fetch from Upstream (ou clicando com o botão direito no repositório emRepositories Viewe selecionandoFetch from Upstream).

Esta busca pode ser configurada clicando com o botão direito no projeto e selecionandoTeam → Remote → Configure Fetch from Upstream:

image

5.6. Comparando e Sincronizando

Se quisermos ver as mudanças entre o diretório de trabalho local e uma mudança confirmada, podemos clicar com o botão direito no recurso e escolherCompare With. Isso abre oSynchronize View para nos permitir navegar pelas alterações:

image

Ao clicar duas vezes no arquivo alterado, o editor de comparação será aberto, permitindo comparar as alterações.

Se quisermos comparar dois commits, precisamos selecionarTeam → Show in History.

Na visualização de histórico, vamos destacar os dois commits que queremos comparar e selecionar a opçãoCompare with Each Other:

image

Se quisermos comparar entre o diretório de trabalho e um branch, podemos usarTeam → Synchronize

5.7. Mesclando

A mesclagem incorpora alterações de uma ramificação ou marca na ramificação com check-out atualmente.

Podemos mesclar clicando emTeam → Merge ou clicando com o botão direito do mouse no nome do repositório na visualização dos repositórios e selecionarMerge:

image

Agora podemos selecionar o ramo ou a marca que queremos mesclar com o ramo atualmente com check-out.

6. Conclusão

Neste tutorial, apresentamos o plug-in EGit para eclipse, como instalá-lo e configurá-lo e como usá-lo em nosso desenvolvimento diário.

Para mais detalhes sobre o EGit, verifique sua documentação oficialhere.