Git: Principais Comandos

From Wiki


Comandos Básicos

Comando Descrição
git init <directory>

Inicia um novo repositório Git.

Até que você executar este comando dentro de um repositório ou diretório, é apenas uma pasta regular. Só depois de introduzir este não aceita mais comandos do Git.

git clone <repository>

Clona um repositório localizado em <repo> para a máquina local.

O repo original pode ser localizado no sistema de arquivos local ou em um servidor remota via HTTP ou SSH.

git config

Abreviação de "configure", este é mais útil quando você estiver configurando Git pela primeira vez.


git help

Esqueceu a um comando? Digite isso na linha de comando para trazer os 21 comandos mais comuns git.

Você também pode ser mais específico e digitar "git help init" ou outro termo para descobrir como usar e configurar um comando específico git.


git status

Verifique o status do seu repositório.

Ver quais arquivos estão dentro dele. Quais mudanças precisam de um commit, e que ramo do repositório que você está trabalhando no momento.

git add

Isso não adiciona novos arquivos para seu repositório.

Em vez disso, ele traz novos arquivos a atenção do Git. Depois de adicionar os arquivos, eles estão incluídos no "snapshots" do repositório Git.

git commit -m <message>

comando mais importante do Git!

Depois de fazer qualquer tipo de mudança, você introduzir esta a fim de ter um "instantâneo" do repositório. Normalmente ele vai git commit -m "mensagem aqui." O -m indica que a secção seguinte do comando deve ser lido como uma mensagem.

git branch

Trabalhar com vários colaboradores e quiser fazer alterações em seu próprio país? Este comando irá permitir que você crie um novo ramo, ou cronograma de commits, de mudanças e adições de arquivos que são completamente sua. Seu título vai após o comando. Se você queria um novo ramo chamado "cats", você deverá digitar git branch cats


git log Lista as atividades entre local e o repositório remoto
git checkout <nome_da_branch>

permite literalmente você fazer um "check out" de um repositório que você não está atualmente dentro.

Este é um comando de navegação que lhe permite mover-se para o repositório que deseja verificar. Você pode usar este comando como mestre git checkout para olhar para o branch master, ou gatos git checkout para olhar para outro ramo.

git merge <nome_da_branch>

Quando você terminar de trabalhar em um ramo, você pode mesclar as alterações de volta para o branch master, que é visível a todos os colaboradores. git merge gatos tomaria todas as alterações feitas ao "gatos" ramo e adicioná-los para o mestre.

git push

Se você estiver trabalhando em seu computador local, e quer que seus compromete-se a ser visível on-line no GitHub, bem como, você "empurrar" as mudanças até GitHub com este comando.


git pull

Se você estiver trabalhando em seu computador local e quer a versão mais up-to-date do seu repositório para trabalhar com, você "puxar" as mudanças para baixo do GitHub com este comando.

Detalhando

Desfazendo mudanças

Comando Descrição
git revert <commit>

Cria um novo commit que desfaz todas as mudanças feitas em <commit>, então aplica ele para o ramo atual (current branch).

git reset <file>

Remove <file> da area de staging, mas deixa o diretório de trabalho inalterado. Isto unstage um arquivo sem sobrescrever qualquer mudança.

git clean -n

Mostra quais arquivos serão removidos do diretório de trabalho. Usar a flag -f no lugar de -n flag para executar a limpeza.

Ramificações/Branches

Comando Descrição
git branch

Lista todos os ramos (branches) no repositório.

Adicione um argumento <branch> para criar um novo ramo com o nome <branch>.

git checkout -b <branch>

Cria e check uma nova ramificação chamada <branch>.

git merge <branch>

Fundi (Merge) <branch> na ramificação atual.

Repositórios remotos

Comando Descrição
git remote add <name> <url>

Crie uma nova conexão para um repositório remoto. Depois de adicionar o repositório remoto, você pode usar <name> como um atalho para <url> em outros comandos.

git fetch <remote> <branch>

Obtém um <branch> específico do repositório. Deixe fora <branch> para buscar todos as referencias remotas.

git pull <remote>

Buscar a cópia do remota especificada da ramificação atual e imediatamente mescla à cópia local.

git push <remote> <branch>

Envia a ramificação para <remote>, junto com os commits necessários e objetos. Cria um branch nomeado no repositório remoto, se ele não existir.

git config

git log

git diff

Comando Descrição
git diff HEAD

Mostra as diferenças entre o diretório de trabalho e o último commit.

git diff --cached

Mostra as diferenças entre as mudanças staged e o último commit.

git reset

Comando Descrição
git reset

Reseta a área de staging para corresponder ao commit mais recente, mas deixa o diretório de trabalho inalterado.

git reset --hard

Reseta a área de staging para corresponder ao commit mais recente, mas sobrescreve todas as mudanças o diretório de trabalho inalterado.

git reset <commit>

Move the current branch tip backward to <commit>, reset the staging area to match, but leave the working directory alone.

git reset --hard <commit>

Same as previous, but resets both the staging area & working directory to match. Deletes uncommitted changes, and all commits after <commit>.

git rebase

Comando Descrição
git rebase -i <base>

Interactively rebase current branch onto <base>. Launches editor to enter commands for how each commit will be transferred to the new base.

git pull

Comando Descrição
git pull --rebase <remote>

Fetch the remote’s copy of current branch and rebases it into the local copy. Uses git rebase instead of merge to integrate the branches.

git push

Comando Descrição
git push <remote> --force

Forces the git push even if it results in a non-fast-forward merge. Do not use the --force flag unless you’re absolutely sure you know what you’re doing.

git push <remote> --all

Push all of your local branches to the specified remote.

git push <remote> --tags

Tags aren’t automatically pushed when you push a branch or use the --all flag. The --tags flag sends all of your local tags to the remote repo