![CDATA[
Configuração de acesso SSH ao Gitee
Antes de intreagir com repositórios remotos, é fundamantal configurar a autenticação por chave SSH. Siga os passos:
- Gerar par de chaves: Execute no terminal o comando abaixo, substituindo o e-mail.
ssh-keygen -t rsa -b 4096 -C "usuario@exemplo.com"
Os arquivos gerados serão ~/.ssh/id_rsa (privada) e ~/.ssh/id_rsa.pub (pública).
- Adicionar a chave pública ao Gitee: Exiba o conteúdo da chave pública com:
cat ~/.ssh/id_rsa.pub
Copie todo o texto mostrado. Acesse o Gitee, vá em Configurações > Chaves SSH > Nova chave. Cole o conteúdo e defina um título (ex.: "Meu PC"). Salve.
- Iniciar o agente SSH e adicionar a chave:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
Enviando um projeto local para o Gitee
Considerando que você ainda não possui um repositório remoto, siga as instruções abaixo.
Criação do repositório no Gitee
Faça login no Gitee, clique em "Novo repositório" e preencha o nome (ex.: meu-app). Defina a visibilidade e clique em "Criar".
Inicialização local e primeiro commit
cd /caminho/do/seu/projeto
git init
git add .
git commit -m "Primeiro commit"
Vinculando o remoto e enviando
Na página do repositório recém-criado, copie a URL (SSH ou HTTPS). Exemplo:
https://gitee.com/usuario/meu-app.git
Adicione o remote e faça o push (considerando que a branch padrão é main):
git remote add origin https://gitee.com/usuario/meu-app.git
git push -u origin main
Clonando um projeto existente
Para obter uma cópia local de um repositório remoto, use o comando clone.
cd ~/projetos
git clone git@gitee.com:usuario/repo-exemplo.git
cd repo-exemplo
Explore as branches:
git branch # branches locais
git branch -r # branches remotas
Para trabalhar em uma branch específica (ex.: funcionalidade), crie e acompanhe a remota:
git checkout -b funcionalidade origin/funcionalidade
git pull origin funcionalidade
Após realizar alterações, faça o commit e envie:
git add .
git commit -m "Ajustes na funcionalidade"
git push -u origin funcionalidade
Resolvendo conflitos durante o merge
Se ao tentar enviar suas alterações ocorrerem conflitos com o remote, execute os passos a seguir para resolvê-los.
Primeiro, crie um branch temporário baseado no remote para trazer as últimas mudanças sem afetar seu trabalho atual:
git checkout -b branch-atualizacao origin/main
Retorne ao branch de destino (ex.: main) e mescle o branch temporário:
git checkout main
git merge branch-atualizacao
O Git indicará os conflitos. Verifique os arquivos afetados:
git status
Exemplo de saída:
Unmerged paths:
both modified: src/main/java/br/loja/api/PedidoController.java
Abra o arquivo conflitante e localize as marcações <<<<<<<, ======= e >>>>>>>. Exemplo:
<<<<<<< HEAD
public String obterStatus() {
return "Ativo";
}
=======
public int obterStatus() {
return 1;
}
>>>>>>> branch-atualizacao
Edite o código deixando apenas a versão desejada. Por exemplo, mantendo a primeira:
public String obterStatus() {
return "Ativo";
}
Adicione o arquivo corrigido à área de stage:
git add src/main/java/br/loja/api/PedidoController.java
Faça o commit da resolução:
git commit -m "Resolve conflito de merge"
Envie as alterações para o remote:
git push -u origin main
]]>