Principais comandos utilizados em GIT

1 - O que é o git


Git é um sistema de controle de versões distribuído e descentralizado, usado principalmente no desenvolvimento de software,
mas pode ser usado para registrar o histórico de edições de qualquer tipo de arquivo.

2 - Configurações básicas

git -> Verifica a se o git está corretamente instalado
git config --global user.name "User Name"
git config --global user.email "email@gmail.com"
git config --global color.ui true

3 - Fases do Git
  • Untracked files -> Quando o arquivo é criado porém o git ainda não o referencia no versionamento
  • Changes to be commited -> Após a utilização o comando (git add <file>) os arquivos estão prontos para serem comitados
  • Nothing to be commited -> Após a utilização do comando (git commit -m "meu primeiro commit") Não há arquivos para serem comitados

4 - Principais comandos
  • git init -> Cria um repositorio local, assim controlando o versionamento dos arquivos que estão na pasta
  • git status -> Verifica o estado dos arquivos
  • git log -> Exibe o histórico de commits
  • git log -p -> Exibe o histórico de commits porém exibe as modificações realizadas
  • git log -p -2 -> Exibe o histórico de commits porém exibe as duas ultimas modificações realizadas
  • git log --stat -> Exibe a statistica das modificações dos commits
  • git log --pretty=oneline -> Exibe o histórico de commits resumidamente em uma linha
  • git log --pretty=format:"%h - %an, %ar : %s" -> Exibe o histórico de commits resumidamente em uma linha contendo inicio do hash, user, a quanto tempo foi commitado, e descrição do commit
  • git log --since=2.days -> Exibe o histórico de commits de dois dias atrás
  • git add . -> Adiciona todos os novos arquivos ao commit
  • git add <file> -> Adiciona um determinado arquivo para o commit
  • git reset HEAD <file> -> Volta do arquivo do estagio 2 para o estágio 1 (Untracked)
  • git commi -m "CommitMessage" -> Efetua o commit inserindo uma descrição
  • git commit -a -m "CommitMessage" -> Adiciona todos os novos arquivos ao commit e efetua o commit com uma descrição
  • git commit -> Abre um arquivo para inserir a descrição de seu commit e após salva-lo efetua o commit
  • git branch -> Exibe em qual branch voce está
  • git checkout <CommitCode> -> Baixa um determinado commit de pelo seu hash
  • git checkout -b BranchName -> Cria e referencia uma nova branch tendo como base a branch atual
  • git checkout master -> retorna para a branch master
  • git merge NomeDaBranch - Faz um merge entra a branch atual com a branch indicada no comando
  • git rebase BranchName -> Traz as modificações da branch mencionada para a branch atual
  • git reset HEAD~1 -> volta a versão 1 vez
  • git reset HEAD~1 --soft -> Volta a versão 1 vez porém deixa os arquivos no estado Untracked files
  • git reset HEAD~1 --hard -> Volta a versão 1 vez porém os arquivos alterados seram perdidos
  • git remote add origin URL.git -> referencia o repositorio remoto como origem
  • git push origin BranchName -> Adiciona os arquivos da branch atual (local) no repositório remoto (Se não existir, será criado um novo Branch remota)
  • git clone URLRemote.git LocalRepositoryName -> Clona o repositório remoto (Você pode passar um nome para o repositorio local ou não)
  • git checkout -b LocalBranchName origin/RemoteBranchName -> Você cria uma branch local através de uma branch remota
  • git pull origin BranchName -> Traz as alterações da branch remota
  • git tag VersionNumber-> Adiciona a tag demarcando a versão do seu release (Ex: 100.0.5)
  • git tag -l -> Lista todas as tags do sistema
  • git push origem master --tags -> Sobe todas as teag locais para a branch remota
5 - Mais usados

5.1 - Criando nova branch remota

git checkout -b <branch name>
git push origin <branch-name>


5.2 - Renomeando branch local e remota

git checkout <branch-name>
git branch -m <branch-new-name>
git push origin :<branch-name> <branch-new-name>
git push origin -u <branch-new-name>

5.3 - Clonando master ou branch especifica 

git clone git@bitbucket.org:dasa_desenv/ch-hospitals-server.git
git clone -b <branch-name> git@bitbucket.org:dasa_desenv/ch-hospitals-server.git

git branch
git checkout <branch-name>

5.5 - Deletando tags

git fetch --all --tags --prune
git tag | xargs git tag -d

5.6 - Deletando tag específica

git tag -d hml/v1.0.0-1 && git push origin :refs/tags/hml/v1.0.0-1

5.7 - Merge local

Quando haver conflitos, atualize as branchs Master e a da sua task, com sua branch ativa, execute o seguinte comando:

git merge master

5.8 - Convenção de Commit

Através de algumas ferramentas como commitlint e commitizen, foi padronizado uma convenção para padronização dos commits, podemos utilizar da seguinte forma:

git add .
git commit
git push

Em seguida teremos uma serie de perguntas com a finalidade de realizar o commit de forma interativa.


6 - Criando chave publica

ssh-keygen - Comando utilizado para criar uma nova chave em seu desktop
cd ~/.ssh/ - Entra na pasta onde se encontra o id_rsa.pub

Comentários

Postagens mais visitadas deste blog

Design Patterns

Sistema de mensageria Apache Kafka