Curso básico de git
O que é o git?
Sistema de controle de versão de arquivos
Por que usá-lo?
- Integração contínua
- Várias pessoas em um projeto
	- Fácil de mesclar alterações
 
- Controle do workflow
- Concentre/compartilhe seus projetos
Como o git funciona
- Seu projeto está contido em um diretório
- Diretório .git
- Snapshots
- Acesso remoto a servidores
Começando um projeto
- Local
- Site (gitlab, github, etc)
Começando um projeto
- 
Local
	- mkdir meuProjeto
- git init meuProjeto
 
- .gitignore
Começando um projeto
- 
Repositório
	- Use a interface
- git clone
 
Obs: É possível criar um projeto local e depois adicioná-lo ao repositório
Commits
- 
Cria um snapshot do projeto
	- Armazena somente as alterações
 
- Alteração é feita apenas localmente
- Tags (Hashes)
Commits
- 
git add <arquivo alterado>
	- git add -A
 
- git commit -m "Alterei algo"
- git push
	- git push origin master
 
Commits
- git pull
- git fetch
- git log --oneline
- git checkout <hashe commit>
Commits

Branchs
- Paralelismo de desenvolvimento
- Partem de algum commit da "história" do master
Branchs

Branchs
- git branch <nome da nova branch>
- git checkout <nome da branch>
- 
git branch
	- Diz qual em qual branch você está
 
- Se há alterações, não é permitido trocar de branch
Como juntar branchs?
- git merge
- 
git rebase
	- Um pouco avançado, porém útil
 
Merge

Merge
Text
- git checkout master
- git merge outraBranch
Isso colocará o merge na master
Merge - Conflitos
Ne
- Nem tudo é perfeito
- Alterações no mesmo arquivo podem gerar conflitos
- Merge busca o ancenstral comum
Nessas horas, rebase parece ser interessante além de outros truques "ninjas"
Merge requests
Outros comandos
Text
- git stash
- git config --local
- 
git config --global
	- user.name
- user.email
- core.editor
 
Outros comandos
Text
- git status
- git diff
Boas práticas
- Evite git add -A
- Evite alterações de mesmos arquivos em branchs separadas
- 
Dê commits concisos
	- Trabalhe em uma coisa de cada vez
 
- Evite dar push para cada commit
Boas práticas
- 
Evite abandonar branchs
	- Tenha o costume de dar merge e resolver conflitos
 
- O que está na master deve funcionar
- Branchs dentro das Branchs
Boas práticas
- Dê merge com frequência
- Use merge request
- Primeiro dê merge do master em você antes de dar nele
- README.md
- Uma branch para cada issue
Controle de projeto
Issues
- Problemas / Bugs / TODO's
- Labels
- Responsável
- Data limite e tempo gasto
- Visualizar alterações
- Data de abertura e fechamento das issues
Millestones
- Conjunto de issues
Integração com outras aplicações
Curso básico de git
By Bruno Henrique Meyer
Curso básico de git
- 1,006
 
   
   
  