TerraLib and TerraView Wiki Page

This is an old revision of the document!


Política de Uso do Repositório de Código Fonte da Terralib5 no GitLab

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

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

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

Desenvolvedores que desejem realizar alterações no código deverão criar forks a partir desse repositório principal, submetendo as modificações como solicitações de merge request.

Para clonar o repositório oficial, você pode utilizar o git em linha de comando da seguinte forma:

git clone https://gitlab.dpi.inpe.br/terralib/terralib5.git .

GitLab e o grupo Terralib

Atualmente a organização criada no GitLab possui três times:

  • Owners: os coordenadores técnicos do projeto possuem acesso irrestrito à organização, criação de repositórios e administração de integrantes dos times.
  • Masters: o(s) gerente(s) de desenvolvimento e líder(es) de equipe que possui(em) acesso de administração do Repositório principal da Terralib.
  • Developers: o time de desenvolvedores da Terralib possui acesso de leitura no Repositório principal da Terralib5.

Os desenvolvedores são encorajados a utilizar o recurso de criação de forks do repositório oficial da Terralib. Desta forma, é possível que um desenvolvedor seja capaz de realizar modificações, correções e experimentos sem causar inconsistências no repositório oficial. Assim, modificações devem ser submetidas como merge requests.

Fazendo o fork do repositório da Terralib5

Na janela do GitLab, navegue até o repositório da Terralib.

O botão de Fork se encontra no centro da página. Basta clicar nesta opção e selecionar o seu usuário. Você terá feito um fork do repositório original.

Configurando seu Fork para Mantê-lo Sincronizado com o Repositório Original

Crie uma cópia local do seu fork:

$ git clone https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib5.git

Em seguida, entre na pasta terralib5 e ajuste o nome de usuário e e-mail:

git config user.name your-gitlab-login
git config user.email your-gitlab-email-contact

Para configurar o git para sincronizar a sua cópia local com o repositório original:

1) Vá ao seu navegador e acesse o repositório original da Terralib5.

2) Na barra à direita, copie o endereço do repositório original: https://gitlab.dpi.inpe.br/terralib/terralib5.git.

3) Na linha de comando, vá para a pasta em que você criou a cópia local do seu fork.

4) Para saber o repositório remoto que se encontra configurado atualmente para seu fork, faça:

$ git remote -v

A saída será algo como:

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

5) Para configurar seu repositório local, associando-o com o repositório oficial, use o seguinte comando:

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

6) Verifique se o novo upstream repository especificado encontra corretamente apontado:

$ git remote -v

Você deverá ver a URL do seu fork como origin e a URL do repositório original como upstream, conforme a saída abaixo:

origin	        https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib5 (fetch)
origin	        https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib5 (push)
upstream	https://gitlab.dpi.inpe.br/terralib/terralib5.git (fetch)
upstream	https://gitlab.dpi.inpe.br/terralib/terralib5.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”.