Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:documentation:devguide:gitlab [2016/07/26 16:37] gribeiro [Configurando seu Fork para Mantê-lo Sincronizado com o Repositório Original] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== 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 [[:wiki:documentation:devguide:cloning|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 ===== | ||
- | |||
- | 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: | ||
- | <code bash> | ||
- | $ GIT_SSL_NO_VERIFY=true git clone https://gitlab.dpi.inpe.br/gribeiro/terralib.git . | ||
- | </code> | ||
- | |||
- | **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: | ||
- | <code bash> | ||
- | $ git config --global http.sslVerify false | ||
- | </code> | ||
- | |||
- | Se você preferir desabilitar a verificação de certificados SSL apenas para o repositório que você já clonou, faça: | ||
- | <code bash> | ||
- | $ git config http.sslVerify false | ||
- | </code> | ||
- | |||
- | ===== Configurando sua Cópia Local do Fork para Sincronizá-lo com o Repositório Original ===== | ||
- | |||
- | |||
- | |||
- | Para configurar o git para sincronizar a sua cópia local com o repositório original: | ||
- | |||
- | **1)** Vá ao seu navegador e acesse o [[https://gitlab.dpi.inpe.br/terralib/terralib5|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: | ||
- | <code> | ||
- | $ git remote -v | ||
- | </code> | ||
- | A saída será algo como: | ||
- | <code> | ||
- | origin https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib5 (fetch) | ||
- | origin https://gitlab.dpi.inpe.br/seu-nome-usuario/terralib5 (push) | ||
- | </code> | ||
- | |||
- | **5)** Para configurar seu repositório local, associando-o com o repositório oficial, use o seguinte comando: | ||
- | <code> | ||
- | $ git remote add upstream https://gitlab.dpi.inpe.br/terralib/terralib5.git | ||
- | </code> | ||
- | |||
- | **6)** Verifique se o novo //upstream repository// especificado encontra corretamente apontado: | ||
- | <code> | ||
- | $ git remote -v | ||
- | </code> | ||
- | Você deverá ver a URL do seu //fork// como //origin// e a URL do repositório original como //upstream//, conforme a saída abaixo: | ||
- | <code> | ||
- | 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) | ||
- | </code> | ||
- | === 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//: | ||
- | <code> | ||
- | $ git fetch upstream | ||
- | </code> | ||
- | |||
- | |||
- | **2)** Se você estiver fazendo modificações no branch //master//, assegure-se de estar nele: | ||
- | <code> | ||
- | $ git checkout master | ||
- | </code> | ||
- | |||
- | Se você já estiver neste //branch// receberá uma mensagem como a abaixo: | ||
- | <code> | ||
- | Already on 'master' | ||
- | Your branch is up-to-date with 'origin/master'. | ||
- | </code> | ||
- | |||
- | **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: | ||
- | <code> | ||
- | $ git merge upstream/master | ||
- | </code> | ||
- | |||
- | |||
- | === 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"//. |