Resumo do Versionamento com Git e GitHub
- #GitHub
- #Git
Versionamento de Código com Git e GitHub
Configurando o Git
Criar uma pasta > Dentro da pasta clicar com o botão direito do mouse > Abrir com o GitBash. Agora você já está no GitBash para fazer a configuração.
$ git config
Permite a configuração de localização, ação, tipo, entre outros.
$ git config --global
$ git config --global user.name "<Seu-nome>"
$ git config --global user.email <Seu-email>
$ git config --global init.defaultBranch Nome-da-Branch
Utilizado para definir nome, email, Branch, entre outras configurações globais.
Autenticação via Token
- Criar Repositório no GitHub;
- Criar um token em
Settings > Developer settings > Personal access tokens > Tokens (classic) > Generate new token (classic) > Escreva uma anotação, selecione o tempo em que o token irá expirar e selecione as opções de acordo com o nível de restrição que você deseja > Generate token
; - Copiar o URL do Repositório criado;
- No Git, use
$ git clone URL-Copiado-no-passo-3
; - Copie o token e cole na janela que solicita;
Salve essas credenciais na sua máquina
- Temporariamente:
$ git config --global credential.helper cache
- Permanentemente:
$ git config --global credential.helper store
Saiba mais sobre o Armazenamento de Credenciais
Para clonar o Repositório do GitHub na sua máquina
$ git clone <URL-Copiado-no-passo-3>
Autenticação com SSH
Criando e Clonando Repositórios
Transformando um diretório local que não está sob controle da versão, num repositório Git.
Criando uma pasta:
$ mkdir <Nome-da-pasta>
Movendo para a pasta:
$ cd <Nome-da-pasta>
Criando um repositório local:
$ git init
Clonando um repositório
- Do GitHub com o mesmo nome ou com nome diferente:
$ git clone <URL-do-GitHub>
$ git clone <URL-do-GitHub> <Novo-nome>
Verificar o conteúdo de um Repositório
- Mova-se para o Repositório e use:
$ cat config
Conectar o Repositório Local com o Remoto
$ git remote add origin <URL-do-Repositório-Remoto>
Salvando Alterações no Repositório Local
- Criar arquivo:
$ touch README.md
- Adicionar o arquivo na área de preparação:
$ git add README.md
- Salvar alterações:
$ git commit -m"<commit inicial>"
- Verificar o commit:
$ git log
- Verificar se houve alguma alteração na árvore de trabalho:
$ git status
Obs: Quando se tem uma pasta/diretório vazio, o $ git status
não vai considerar como modificação.
Ignore uma pasta/diretório
$ echo <Nome-da-pasta/> > .gitignore
- Desfazer:
$ echo > .gitignore
Obs: .gitkeep
é uma convenção para não deixar um diretório vazio.
Inserir todos os arquivos na Área de Preparação
Mova-se para o diretório desejado e use o comando:
$ git add .
Desfazendo Alterações no Repositório Local
Deixar de ser um repositório .git
$ rm -rf .git
Restaurar um arquivo da árvore de trabalho
Descartar todas as alterações feitas localmente no arquivo:
$ git restore README.md
Para verificar todos os committs:
$ git log
Renomear último commit:
$ git commit --amend -m"<Novo nome>"
Desfazer último commit e voltar para uma versão anterior
Mantém os arquivos dos commits desfeitos na área de preparação:
$ git reset --soft <hash-do-commit-da-versão-que-você-deseja>
Adiciona os arquivos dos commits desfeitos na árvore de trabalho fora da área de preparação:
$ git reset --mixed <hash-do-commit-da-versão-que-você-deseja>
Desfaz completamente os commits posteriores, apagando os arquivos:
$ git reset --hard <hash-do-commit-da-versão-que-você-deseja>
Para observar o histórico de modificações:
$ git reflog
Remover arquivo:
$ git reset diretório/<nome-do-arquivo>
$ git restore --staged diretório/<nome-do-arquivo>
Enviando e Baixando Alterações com o Repositório Remoto
Conectando com o Repositório Remoto:
$ git remote add origin <URL-do-GitHub>
Enviando para o Repositório Remoto:
$ git push -u origin main
Forçar o push:
$ git push -f origin main
(Com a tag -f
você irá substituir o conteúdo da branch remota pelo código que você tem no seu repositório local)
Baixar alterações para o Repositório Local:
$ git pull
Trabalhando com Branches
Criando uma Branch:
$ git checkout -b <nome-da-branch>
Obs: Ao criar uma nova Branch, o último commit irá apontar para ela, e os novos commits também.
Mudar de Branch:
$ git checkout main
Para listar o último commit de cada Branch:
$ git branch -v
Para que as alterações feitas numa nova Branch aparecam numa anterior é necessário mesclá-las:
$ git merge <nome-da-branch-que-deseja-mesclar>
Excluir a Branch que não será mais utilizada:
$ git branch -d <nome-da-branch>