Comandos GIT

Instalando o git no linux baseado no Debian

$ apt-get install git

Configuração inicial

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

Zipando partes do projeto

# Salvando os arquivos alterados em um arquivo zip de um commit especifico
git archive --output=FILE.zip COMMIT $(git diff --name-only COMMIT COMMIT~1)

# Também este comando faz a mesma coisa que o anterior
git diff -z --name-only HEAD^ | xargs -0 git archive -o update.zip HEAD

# Achei uma outra forma de fazer bem interessante
zip update.zip $(git diff --name-only -D HEAD^)

Tag

# visualizando/listando suas tags já criadas
git tag

# Criando uma tag
git tag -a nome_da_tag -m "comentario para a tag"

# Enviando todas as tags para o servidor remoto
git push -u origin --tags

# Enviando uma tag especifica para o servidor remoto
git push -u origin nome_da_tag

# Excluindo uma tag do repositório local
git tag -d nome-da-tag

# Excluindo uma tag do repositório remoto
git push origin :refs/tags/nome-da-tag

Mais detalhes sobre tags, pode ser encontrado em: http://git-scm.com/book/pt-br/Git-Essencial-Tagging

Log

# Exibindo a lista de log em uma linha com o ID resumido
git log --oneline

# Exibindo a lista de log em uma linha com o ID completo
git log --pretty=oneline

# Exibindo a lista de arquivos ignorados
git ls-files --others -i --exclude-standard

Branch

# Criando um branch
git branch nome_branch

# Mudando de branch
git checkout nome_branch

# Atalho para os dois comandos acima
git checkout -b nome_branch

# Renomeando um branch
git branch -m branch_anterior novo_branch

# Excluindo um branch local
git branch -d nome_do_branch_local

# Excluindo um branch remoto
git push origem :nome_do_branch_remoto

Mais detalhes aqui:

Adicionando repositorio remoto

# Adicionando o repositorio remoto em um projeto já iniciado
git remote add origin ENDERECO-DO-REPOSITORIO

# verificando se o remoto foi adicionado
git remote -v

.gitignore não funcionando

# Limpando o cache
git rm -r --cached .

# Adicionando novamente
git add .

Desfazendo… <- <- <-

# Se você excluiu arquivos do seu projeto sem querer, é possível recuperar os arquivos do último commit com o seguinte comando
# 1º Opção se você ainda não fez o commit
git reset --hard HEAD

# 2° Opção se você já fez o commit
git reset --hard HEAD^

Mais detalhes em:

Mudando de branch sem commitar as alterações imcompletas

# Para demonstrar, você entra no seu projeto e começa a trabalhar em alguns arquivos e adiciona alguma modificação na área de seleção. Se você executar git status, você pode ver seu estado sujo:
# Agora você quer mudar de branch, mas não quer fazer o commit do que você ainda está trabalhando; você irá fazer o stash das modificações. Para fazer um novo stash na sua pilha, execute git stash:
git stash

# Para colocar um nome no stash utilize:
git stash save "parei em algum lugar"

# Neste momento, você pode facilmente mudar de branch e trabalhar em outra coisa; suas alterações estão armazenadas na sua pilha. Para ver as stashes que você guardou, você pode usar git stash list:
git stash list

# Você pode aplicar aquele que acabou de fazer o stash com o comando mostrado na saída de ajuda do comando stash original: git stash apply. Se você quer aplicar um dos stashes mais antigos, você pode especificá-lo, assim: git stash apply stash@{2}. Se você não especificar um stash, Git assume que é o stash mais recente e tenta aplicá-lo:
git stash apply

# A opção apply somente tenta aplicar o stash armazenado — ele continua na sua pilha. Para removê-lo, você pode executar git stash drop com o nome do stash que quer remover:
git stash drop stash@{8}

# Você também pode executar git stash pop para aplicar o stash e logo em seguida apagá-lo da sua pilha.
git stash pop

Forçar Git a remover alterações locais com o comando pull

Nota importante: Este procedimento vai remover do servidor local todos os ficheiros untracked.

Se houver alterações locais que não se pretende comitar, o comando

git pull

por vezes pode dar problemas de merge, originando mensagens do tipo
Please, commit your changes or stash them before you can merge

Nestes casos é preciso executar os seguintes comandos

 git reset --hard HEAD git clean -f -d git pull 

Erros:

Erro ao tentar fazer um merge
fatal: refusing to merge unrelated histories
Rodar o seguinte comando

 git pull origin master --allow-unrelated-histories

Mais detalhes em:

Referências bibliográficas

http://git-scm.com/book/pt-br/

http://blog.wylkon.com.br/post/1092838251/conhecendo-git

http://www.woompa.blog.br/2011/07/13/problemas-com-seu-gitignore-ele-nao-funciona/

https://git-scm.com/book/pt-br/v1/Primeiros-passos-Instalando-Git
https://git-scm.com/book/pt-br/v1/Primeiros-passos-Configura%C3%A7%C3%A3o-Inicial-do-Git

Deixe uma resposta

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

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.