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:
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:
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:
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:
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:
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:
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
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:
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:
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 :
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:
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:
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:
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:
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:
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.