seg
ago 9th

Git – Removendo tags do repositório ...

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

seg
jul 12th

Manipulando branches remotos com Git ...

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

sáb
out 3rd

Criando um repositório no Github ...

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