TerraLib and TerraView Wiki Page

This is an old revision of the document!


Usando o GitLab da TerraLib

Resumo: Este documento explica como os desenvolvedores devem criar forks do repositório original da TerraLib no ambiente do GitLab, bem como configurar seus repositórios locais para mantê-los em sincronia com o original. Também é apresentado como submeter pedidos para incorporação de modificações no repositório original.

Introdução

O repositório oficial da TerraLib no GitLab encontra-se disponível no seguinte endereço:
https://gitlab.dpi.inpe.br/terralib/terralib

Este repositório deverá ser utilizado apenas para download do código fonte oficial.

Os desenvolvedores que queiram realizar alterações no código fonte e depois submeter essas alterações para integração ao repositório oficial, deverão criar forks a partir do repositório principal, submetendo as modificações como solicitações de merge request.

Se você quer apenas fazer o download do código fonte oficial, consulte o documento Cloning TerraLib/TerraView Repository.

Criando um fork do Repositório Oficial da TerraLib

No seu navegador, vá para o endereço: https://gitlab.dpi.inpe.br.

Na interface gráfica do GitLab, navegue até o projeto TerraLib:
https://gitlab.dpi.inpe.br/terralib/terralib

O botão de Fork se encontra no centro da página.

Basta clicar no botão de Fork e selecionar o seu usuário no formulário que será exibido.

Ao final deste processo você terá o seu fork disponível em um link como:
https://gitlab.dpi.inpe.br/gribeiro/terralib

Criando uma Cópia Local do seu Fork

1. Para criar uma cópia local do seu fork para trabalhar, basta apontar o Git para o endereço do seu fork, como por exemplo:

$ GIT_SSL_NO_VERIFY=true git clone https://gitlab.dpi.inpe.br/gribeiro/terralib.git .

Atenção: No comando acima, desabilitamos o uso de certificados SSL. Se você preferir, pode desabilitar de forma local ou global essa verificação. Para deabilitar de forma global faça:

$ git config --global http.sslVerify false

Se você preferir desabilitar a verificação de certificados SSL apenas para o repositório que você já clonou, faça:

$ git config http.sslVerify false

2. Após ter clonado o repositório, não se esqueça de configurar suas credenciais para que os commits sejam anotados com o seu usuário:

$ git config user.name your-login
$ git config user.email your-e-mail

3. Se quiser, já alterne para o branch correto:

$ git checkout -b develop origin/develop

Configurando sua Cópia Local do Fork para Sincronizá-lo com o Repositório Original

1. Após ter clonado e configurado o seu repositório local a partir do seu fork, será necessário associar seu repositório local com o repositório oficial. Para isso, utilize o seguinte comando:

$ git remote add upstream https://gitlab.dpi.inpe.br/terralib/terralib.git

2. Verifique se o upstream do seu repositório local foi associado corretamente ao endereço do repositório oficial (https://gitlab.dpi.inpe.br/terralib/terralib.git). Para isso, utilize o comando abaixo:

$ git remote -v

A saída deverá ser semelhante à seguinte:

origin	    https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib.git (fetch)
origin	    https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib.git (push)
upstream    https://gitlab.dpi.inpe.br/terralib/terralib.git (fetch)
upstream    https://gitlab.dpi.inpe.br/terralib/terralib.git (push)

Sincronizando Sua Cópia Local e Seu Fork com o Repositório Original

1) Faça o fetch dos branches e seus respectivos commits do repositório upstream:

$ git fetch upstream

2) Se você estiver fazendo modificações no branch master, assegure-se de estar nele:

$ git checkout master

Se você já estiver neste branch receberá uma mensagem como a abaixo:

Already on 'master'
Your branch is up-to-date with 'origin/master'.

3) Faça o merge do upstream/master (ou do ramo desejado) com o seu ramo local para sincronizar seu repositório local com o original:

$ git merge upstream/master

Fazendo pedidos de merge (Merge Requests)

Para enviar as modificações para o repositório original é necessário fazer pedido de merge pela interface do GitLab. Navegue para o seu fork e vá para “Merge Requests” disponível no menu lateral esquerdo e clique em “New Merge Request”.

Na janela do navegador, no site do GitLab do seu fork, selecione o ramo correto, onde você fez as modificações e em seguida selecione a opção “Compare branchs and continue”.