Uma forma de criar uma marcação no Git seja para documentar uma modificação importante ou para marcar uma versão é usar o comando “tag”. Caso você se depare com o problema de remover uma tag criada acidentalmente no repositório fica aqui a dica de como corrigir.
Imaginando que após alguns commits queremos criar uma tag fariamos isto:
git tag -a beta0.1 -m “Primeira versão beta”
Continuamos trabalhando e após mais alguns commits fazemos novamente:
git add . & git commit -am “Incluindo arquivo README” git tag -a beta1.0 -m “Mais uma versão beta” git push origin master git push --tags Counting objects: 6, done. ... To git@github.com:mauriciodeamorim/testes_com_tags.git * [new tag] beta0.1 -> beta0.1 * [new tag] beta1.0 -> beta1.0
Aqui cometemos o erro de criar outra tag numa sequência diferente da inicial e enviamos ao repositório.
Olhando nossa árvore no Gitk temos:

Em nosso repositório no GitHub ficou assim:

Então vamos considerar que a tag válida é a primeira “beta0.1” , então apagaremos a tag beta1.0 do repositório e depois localmente.
git push origin :beta1.0 git tag -d beta1.0
Agora olhando tanto para o GitK quanto para o repositório temos tudo em ordem novamente.
Outros comandos
| Envia uma tag de cada vez ao repositório | git push origin beta0.1 |
| Envia todas as tags ao repositório | git push – - tags |
| Envia commits e tags de uma só vez ao repositório | git push origin master – - tags |
| Lista as tags existentes | git tag |
| Descreve a tag e quantos commits temos após ela | git describe |
| Mostra a tag e commit detalhadamente | git show beta0.1 |
| Mostra a tag detalhadamente | git tag -v beta0.1 |
Referências:
Git Ready
Github – Working with remotes
Reorganizando meus projetos no Github me deparei com o problema de ter criado muitos branches locais e remotos e tudo estava uma grande bagunça. Os comandos que me ajudaram a resolver isto foram:
Dado os branches locais
macos-snow ~/project (master) git branch * master fix_counter rails3-version
Para criá-los remotamente use
macos-snow ~/project (master) git push --all
Ou para um branch específico
macos-snow ~/project (master) git push origin rails3-version
Para apagar branches locais
macos-snow ~/project (master) git branch -D rails3-version
Para apagar branches remotos
macos-snow ~/project (master) git push origin :rails3-version
Renomear branches locais
macos-snow ~/project (master) git branch -m old_branch new_branch
As referências que encontrei para renomear branches remotos não me foram úteis por isso fiz da forma mais prática renomeando o branch local, enviando para repositório e apagando o branch remoto antigo.
Referências:
- Help Github
- Git ready
Vou descrever aqui o caminho mais curto para colocar seu projeto em um repositório remoto usando o Github.
Crie uma conta no Github.
Adicionei sua chave SSH (Linux) copiando o resultado do comando abaixo no campo “SSH Public Key”. Veja aqui como configurar em outros sistemas.
cat ~/.ssh/id_dsa.pub
Se ainda não tem a chave, crie e proceda como no item anterior.
cd ~/.ssh ssh-keygen -t rsa -C "seu_email@email.com" (enter) (enter)
Crie um repositório em Your Repositories que chamaremos de “primeiro_projeto”
Na máquina local, crie uma pasta chamada primeiro_projeto, inicie um projeto com o Git e crie um arquivo qualquer para teste:
mkdir primeiro_projeto cd primeiro_projeto git init-db touch arquivo_qualquer.txt git add . git commit -a -m "Primeiro registro de alterações."
Vincule o projeto ao repositório no Github digitando:
git remote add origin git@github.com:sua_conta_no_github/primeiro_projeto.git
Envie os arquivos da sua máquina para o repositório:
git push origin master
Confira se o seu repositório foi atualilzado acessando http://github.com/sua_conta_no_github/primeiro_projeto
Referências:
- help.github.
Assuntos relacionados:
- Como usar o Git no Windows
- Criando branches no Git
- Criando atalhos no Git




