Adicionar ficheiros existentes a um repositório GitLab – Guia de servidor, Git e Linux

Muitos programadores conhecem esta situação: um site, um projeto WordPress ou uma aplicação existe há meses num servidor ou computador local, mas nunca foi versionado com Git. Quando as alterações se tornam difíceis de acompanhar ou várias pessoas colaboram, compensa criar um repositório Git. Neste artigo, explico passo a passo como enviar um projeto existente para GitHub ou GitLab e quais os comandos Git e Linux necessários. Incluo também boas práticas, dicas para mensagens de commit, uma introdução ao Gitmoji, perguntas frequentes e um glossário.

Porquê integrar um projeto existente num repositório Git?

O controlo de versões é uma parte importante do desenvolvimento de software mouno. O Git permite gerir o código de forma controlada, mesmo em projetos inicialmente criados sem Git. Um repositório central no GitHub ou GitLab oferece as seguintes vantagens:

  • Controlo de versões seguro
  • Possibilidade de anular erros
  • Alterações fáceis de acompanhar
  • Trabalho de equipa estruturado
  • Automatização de testes ou implementações
  • Cópias de segurança organizadas

Os projetos web, como WordPress, Node.js, Laravel ou sites estáticos, beneficiam especialmente do Git.

Cenário 1: o repositório Git ainda está vazio

Se o repositório no GitHub ou GitLab ainda não contiver ficheiros, pode começar diretamente na pasta do projeto existente.

Passo 1: aceder ao diretório do projeto

cd /pfad/zu/deinem/projekt

Passo 2: inicializar o Git

git init

Passo 3: adicionar os ficheiros

git add -A

Passo 4: criar o primeiro commit

git commit -m "Initial commit - bestehendes Projekt"

Passo 5: ligar o repositório remoto

git remote add origin https://github.com/user/projekt.git
# oder:
git remote add origin https://gitlab.com/user/projekt.git

Passo 6: criar ou mudar o nome do branch

git branch -M main

Passo 7: enviar os ficheiros

git push -u origin main

Todo o projeto existente encontra-se agora no repositório.

Cenário 2: o repositório já contém ficheiros, como README ou .gitignore

Muitos repositórios GitHub e GitLab já contêm ficheiros como README.md ou configurações de exemplo. Neste caso, é mais simples clonar primeiro o repositório.

Passo 1: mudar o nome da pasta do projeto

mv projekt projekt.bkp

Passo 2: clonar o repositório

git clone https://github.com/user/projekt.git projekt

ou

git clone https://gitlab.com/user/projekt.git projekt

Passo 3: copiar os ficheiros antigos para o novo repositório

cp -a projekt.bkp/. projekt/

Passo 4: adicionar os ficheiros ao Git

cd projekt
git add -A

Passo 5: criar o commit

git commit -m "Import bestehendes Projekt"

Passo 6: enviar as alterações

git push -u origin main

Visão geral dos principais comandos Git e Linux

TarefaComandoDescrição
Criar um repositório Gitgit initCria um novo repositório Git
Adicionar ficheirosgit add -AAdiciona todos os ficheiros ao índice
Guardar um commitgit commit -m “Text”Cria uma versão das alterações
Ligar o remotegit remote add origin URLLiga o repositório local ao remoto
Clonar o repositóriogit clone URLTransfere um repositório remoto
Definir o branchgit branch -M mainCria ou define o branch main
Fazer pushgit push -u origin mainTransfere o código para o remote
Copiar uma pastacp -a alt/. neu/Copia ficheiros com as respetivas permissões
Mudar o nome de uma pastamv alt neuMuda o nome de ficheiros ou diretórios

Como escrever corretamente mensagens de commit

Boas mensagens de commit tornam o histórico claro e compreensível. Uma estrutura organizada é considerada uma boa prática.

Dicas para boas mensagens de commit

  • Escreva no imperativo: « Add », « Fix », « Update »
  • Mantenha a mensagem curta e compreensível
  • Adicione explicações opcionais numa segunda linha quando necessário
  • Evite termos imprecisos como « Update », « Fixes » ou « Alteração »

Exemplos

  • Add initial project structure
  • Fix menu alignment on mobile
  • Update dependencies
  • Remove deprecated plugin

O que são Gitmojis?

Gitmoji é um projeto comunitário que disponibiliza emojis para mensagens de commit. Assim, é possível perceber imediatamente o objetivo de cada commit.

EmojiSignificado
🎉 (:tada:)Início do projeto
🐛(:bug:)Correção de erro
✨(:sparkles:)Nova funcionalidade
🔧(:wrench:)Alterações de configuração
🔥(:fire:)Remove código ou ficheiros
📝(:memo:)Documentação

Estes elementos são opcionais, mas tornam frequentemente o histórico de commits mais claro e mouno.

Dicas, truques e boas práticas

Algumas recomendações comprovadas para versionar projetos existentes:

  • Utilize sempre um ficheiro .gitignore para excluir ficheiros desnecessários
  • Nunca acompanhe grandes pastas de uploads ou diretórios de cache
  • Utilize branches para novas funcionalidades
  • Crie regularmente pequenos commits em vez de enormes commits conjuntos
  • Utilize chaves SSH com GitHub ou GitLab para trabalhar mais facilmente
  • Antes de cada push, verifique com git status se tudo está correto

FAQ

Posso utilizar Git em qualquer projeto?
Sim. O Git é adequado para sites, bases de dados, scripts, cópias de segurança, aplicações web e muito mais.

Devo versionar imagens e ficheiros enviados?
Não. Normalmente, estes pertencem ao espaço web ou a uma CDN e não ao repositório.

O que devo fazer em caso de conflitos?
O Git assinala as áreas afetadas, que devem ser corrigidas manualmente.

Posso utilizar vários repositórios remotos?
Sim. Um projeto pode ter vários remotes, por exemplo GitHub e GitLab em simultâneo.

Glossário

Repositório Git
Estrutura de projeto central ou local que guarda versões.

GitHub / GitLab
Plataformas para alojar repositórios Git.

Commit
Alteração guardada com uma mensagem.

Push
Transfere alterações locais para o repositório remoto.

Clone
Transfere um repositório existente.

Branch
Linha de desenvolvimento paralela para novas funcionalidades.

Índice
Área de preparação entre a pasta de trabalho e o commit.

Este artigo foi traduzido com a ajuda de IA.

Durchschnittliche Bewertung 0 / 5. Bewertungen: 0

Leave a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Scroll to Top