Aprender a publicar no GitHub um repositório Git local já existente, utilizando os comandos git remote, git push e git clone.
script lab3-sessao0.txt- Acesse o repositório criado no Lab 1:
cd ~/projeto-git # ou o caminho usado no Lab 1-
Acesse https://github.com/new e crie um novo repositório vazio (sem README).
-
Adicione o repositório remoto:
git remote add origin https://github.com/SEU_USUARIO/NOME_DO_REPO.git- Faça o push da branch principal:
git push -u origin main- Verifique a origem remota:
git remote -v- Crie um diretório separado para o clone:
cd ..
git clone https://github.com/SEU_USUARIO/NOME_DO_REPO.git projeto-clonado
cd projeto-clonado- Verifique o conteúdo clonado:
ls -laexitEnvie o arquivo
lab3-sessao0.txtcomo evidência da execução.
Entender e aplicar o comando git tag para marcar versões específicas no histórico do repositório.
script lab3-sessao1.txt- Crie três commits consecutivos:
echo "linha 1" > log.txt
git add log.txt
git commit -m "Commit 1"
echo "linha 2" >> log.txt
git commit -am "Commit 2"
echo "linha 3" >> log.txt
git commit -am "Commit 3"- Liste o histórico resumido:
git log --oneline- Crie tags em cada commit:
git tag v1.0 HEAD~2 # Tag no primeiro commit
git tag v1.1 HEAD~1 # Tag no segundo commit
git tag v1.2 HEAD # Tag no terceiro commit- Liste todas as tags:
git tag- Visualize o commit associado a uma tag:
git show v1.1- Faça checkout de uma tag (modo detached):
git checkout v1.0- Retorne à branch principal:
git checkout mainexitEnvie o arquivo
lab3-sessao1.txtcomo evidência da execução.
Criar e testar um pre-commit hook para bloquear commits com a palavra "TODO" no código.
script lab3-sessao2.txt- No seu repositório, verifique o diretório de hooks:
ls .git/hooks- Crie o hook
pre-commit:
nano .git/hooks/pre-commitCole o conteúdo abaixo:
#!/bin/bash
if grep -r "TODO" *.py; then
echo "❌ Commit bloqueado: remova TODOs do código."
exit 1
fi- Torne o script executável:
chmod +x .git/hooks/pre-commit- Teste o hook:
echo "TODO: ajustar validação" > app.py
git add app.py
git commit -m "teste"- Remova o TODO e repita:
echo "Código limpo" > app.py
git add app.py
git commit -m "commit limpo"exitAdicione o arquivo no Git
lab3-sessao2.txt.
script lab3-sessao3.txt- Certifique-se de que está no branch correto.
git branch # main- Crie um novo branch para testes
git log --oneline
git checkout -b test-reset- Desfaça um commit (mantendo as alterações):
git reset --soft HEAD~1- Verifique o status:
git status
git diff- Faça commit novamente
git add .
git commit -m 'agora vai'exitAdicione o arquivo no Git
lab3-sessao3.txt.
script lab3-sessao4.txt- Certifique-se de que está no branch correto.
git branch # main- Visualize o histórico:
git log
git checkout -b test_hard- Desfaça um commit definitivamente:
git reset --hard HEAD~1- Verifique o status:
git statusexitAdicione o arquivo no Git
lab3-sessao4.txt.
script lab3-sessao5.txt- Certifique-se de que está no branch correto.
git branch # main- Visualize o histórico:
git log
git checkout -b test_revert- Reverta um commit:
git revert HEAD~1- Verifique se o novo commit de reversão foi criado:
git log- Faça ajustes adicionais, se necessário.
exitAdicione o arquivo no Git
lab3-sessao5.txt.
Estes laboratórios complementam o uso de git tag abordando tags anotadas, exclusão e recriação, push para repositórios remotos e criação de branches a partir de tags.
script lab3-sessao6.txt- Crie um commit de exemplo:
echo "versão com nota" >> versao.txt
git add versao.txt
git commit -m "Commit com anotação de versão"- Crie uma tag anotada:
git tag -a v2.0 -m "Versão 2.0 com melhorias"- Liste as tags com detalhes:
git show v2.0- Verifique se é anotada:
git tag -nexitAdicione o arquivo no Git
lab3-sessao6.txt.
script lab3-sessao7.txt- Crie uma tag leve:
git tag hotfix- Verifique sua criação:
git tag- Delete a tag:
git tag -d hotfix- Recrie como anotada:
git tag -a hotfix -m "Hotfix anotado"
git show hotfixexitAdicione o arquivo no Git
lab3-sessao7.txt.
script lab3-sessao8.txt- Crie uma tag local:
git tag release-1.0- Envie somente a tag:
git push origin release-1.0- Envie todas as tags de uma vez:
git push origin --tagsexitAdicione o arquivo no Git
lab3-sessao8.txt.
script lab3-sessao9.txt- Liste suas tags:
git tag- Faça checkout de uma tag:
git checkout v1.1- Crie um branch novo a partir da tag:
git switch -c branch-v1.1- Faça alterações:
echo "patch para v1.1" >> changelog.txt
git add . && git commit -m "patch para versão 1.1"exitAdicione o arquivo no Git
lab3-sessao9.txt.
Perfeito! Aqui está a versão ajustada do laboratório, presumindo que o repositório local já foi criado no Lab 1: