F U N D A M E N T O S GIT / GIT HUB

Começar. É Gratuito
ou inscrever-se com seu endereço de e-mail
F U N D A M E N T O S GIT / GIT HUB por Mind Map: F U N D A M E N T O S GIT / GIT HUB

1. PREPARANDO O AMBIENTE

1.1. 1º Passo: Instale o GIT - site: Git

1.2. 2º Passo: Checando a instalação

1.2.1. git --version

1.3. 3º Passo: Configurando o nome do usuário

1.3.1. git config --global user.name "NomeUsuario"

1.3.2. git config user.name (irá mostrar o nome do usuário configurado)

1.4. 4º Passo: Configurando o email do usuário

1.4.1. git config --global user.email "[email protected]"

1.4.2. git config user.email (irá mostrar o email configurado)

1.5. 5º Passo: Checando todas as configurações do git

1.5.1. git config --list

1.6. 6º Passo (Opcional): Criando alias

1.6.1. git config --global alias.s status

2. CICLO DE VIDA DOS ARQUIVOS

2.1. Mapa Ciclo de Vida

2.2. untracked

2.2.1. O GIT ainda não reconhece o (s) arquivo (s).

2.3. unmodified

2.3.1. O GIT já reconhece o (s) arquivo (s). Agora ele passa a ser observado.

2.4. modified

2.4.1. Ao editar o (s) arquivo (s) o GIT irá marcá-lo como MODIFICADO.

2.5. staged

2.5.1. Neste etapa o GIT está aguardando a versão ser fechada COMMITAR as mudanças

2.6. Atenção: após COMMITAR o GIT marca os arquivos como UNMODIFIED

3. REPOSITÓRIO LOCAL

3.1. 1º Passo: Criando uma pasta

3.1.1. mkdir aprendendo-git

3.1.2. a criação pode ser via interface também!

3.2. 2º Passo: Inicializando o repositório

3.2.1. git init

4. REPOSITÓRIO REMOTO

4.1. 1º Passo: Acesse sua conta no www.github.com

4.2. 2º Passo: Crie um novo repositório

4.3. 3º Passo: Faça a ligação entre o Repositório do GitHub x GitLocal

4.3.1. git remote add origin [email protected]:haynersan/tutorial-github.git

4.3.2. git remote -v (demonstra o endereço do repositório no github)

4.4. 4º Passo: Enviando os arquivos para o repositório no GitHUB

4.4.1. git push -u origin master

5. CLONANDO REPOSITÓRIO

5.1. 1º Passo: Com seu terminal de preferência navegue até o diretório desejado

5.2. 2º Passo: execute o comando

5.2.1. clonando branch padrão

5.2.1.1. git clone url-do-repositorio nome-desejado (opcional)

5.2.2. clonando branch específica

5.2.2.1. git clone --branch nome_da_branch url-do-repositorio nome-desejado (opcional)

6. FAZENDO UM FORK

6.1. 1º Passo: Selecione o projeto desejado no GitHub

6.2. 2º Passo: Clique na opção FORK

6.3. 3º Passo: Clone o projeto para sua máquina (opcional)

7. TRABALHANDO COM BRANCHES

7.1. 1º Passo: Verifique as branches existentes

7.1.1. git branch

7.2. 2º Passo: Criando uma branch

7.2.1. git checkout -b nome-da-branch

7.3. 3º Passo: Navegando entre branches

7.3.1. git checkout nome-da-branch

7.4. 4º Passo: Apagando uma branch

7.4.1. git branch -D nome-da-branch

8. VERSIONANDO O REPOSITÓRIO

8.1. 1º Passo: Checando o status

8.1.1. git status

8.2. 2º Passo: Checando diferença entre versões

8.2.1. git diff

8.2.2. git diff --name-only

8.3. 2º Passo: Adicionando arquivos ao GIT

8.3.1. git add * (adiciona todos arquivos)

8.3.2. git add NomeArquivo (adiciona apenas o arquivo informado)

8.4. 3º Passo: Commitando

8.4.1. git commit -m "mensagem clara sobre as ações"

8.5. 4º Passo: Publicando mudanças

8.5.1. git push

8.5.2. git push origin nome_da_branch

8.6. 5º Passo: Analisando o LOG (opcional)

8.6.1. git log

8.6.2. git log --decorated

8.6.3. git log --author="NomeAutor" (será filtrado por autor)

8.6.4. git shortlog

8.6.5. git shortlog -sn

8.6.6. git log --graph

8.6.7. git show CodigoHash

8.6.8. git log --pretty=oneline

8.6.9. git log --pretty=oneline --graph

8.6.10. git log --pretty=oneline --graph --all

8.6.11. git log -numero_dos_ultimos_commits_que_deseja_ver

9. CONCEITOS MERGE x REBASE

9.1. MERGE

9.1.1. Visão Macro

9.1.2. Prós e Contras

9.2. REBASE

9.2.1. Visão Macro

9.2.2. Final do Rebase

9.2.3. Prós e Contras

10. DESFAZENDO AS "COISAS"

10.1. 1º Cenário: - Arquivo com status MODIFIED

10.1.1. git checkout NomeArquivo

10.1.2. git checkout *

10.2. 2º Cenário: - Arquivo pronto para ser COMMITADO

10.2.1. git reset HEAD NomeArquivo

10.2.2. git reset HEAD *

10.3. 3º Cenário: - Arquivo COMMITADO

10.3.1. git reset --soft CodigoHash (tem que ser a hash que você deseja retornar)

10.3.2. git reset --mixed CodigoHash (tem que ser a hash que você deseja retornar)

10.3.3. git reset --hard CodigoHash (tem que ser a hash que você deseja retornar)

11. TRABALHANDO COM MERGE

11.1. 1º Passo: Verifique a branch que você está

11.1.1. git branch

11.2. 2º Passo: Navegue até a branch que deseja unir

11.2.1. git checkout nome-da-branch

11.3. 3º Passo: Certifique que está branch desejada

11.3.1. git branch

11.4. 4º Passo: Execute o merge

11.4.1. git merge NOME-DA-BRANCH

12. TRABALHANDO COM REBASE

12.1. 1º Passo: Verifique a branch que você está

12.1.1. git branch

12.2. 2º Passo: Navegue até a branch que deseja unir

12.2.1. git checkout nome-da-branch

12.3. 3º Passo: Certifique que está branch desejada

12.3.1. git branch

12.4. 4º Passo: Execute o rebase

12.4.1. git rebase NOME-DA-BRANCH

13. CRIANDO UM ".gitignore"

13.1. 1º Passo: Crie o arquivo com o nome .gitignore

13.2. 2º Passo: Configure o que NÃO deseja versionar. Exemplos

13.2.1. *.json (nenhuma extensão json será versionada)

13.2.2. /node_modules (a pasta inteira não será versionada)

13.2.3. .arquivo.xlsx (o arquivo em específico não será versionado)

13.3. O Repositório "github/gitignore" contém diversos exemplos de como configurar seu .gitignore a depender do tipo de projeto

14. APAGANDO BRANCHES E TAGS

14.1. 1º Passo: Excluindo tag de forma local

14.1.1. git tag -d nome-da-tag

14.1.2. git branch -D nome-da-branch (o "D" deve ser maiúsculo)

14.2. 2º Passo: Excluindo tag no repositório remoto

14.2.1. git push origin :nome-da-tag

14.2.2. git push origin :nome-da-branch

14.2.3. Os comandos tanto para TAG e BRANCH são idênticos

15. CASOS DA VIDA REAL

15.1. 1º Cenário: Fiz um push na MASTER de algo que não deveria. Como reverter?

15.1.1. 1º Passo: git log

15.1.2. 2º Passo: git revert cod_hash_commit

15.1.3. 3º Passo: git push

15.2. 2º Cenário: Fiz um push em uma BRANCH_QUALQUER (exceto master) de algo que não deveria. Como reverter?

15.2.1. git reset --soft CodigoHash (tem que ser a hash que você deseja retornar)

15.3. 3º Cenário: Fiz um commit e escrevi errado a mensagem. E agora?

15.3.1. git commit --amend

15.4. 3º Cenário: Fiz um commit e ficou faltando adicionar uma pequena mudança. Eu não quero criar um novo commit. E agora?

15.4.1. 1º passo: git add .

15.4.2. 2º passo: git commit --amend

15.5. 4º Cenário: Executei um git reset --hard numero_hash É possível recuperar?

15.5.1. 1º passo: git reglog

15.5.2. 2º passo: git reset --hard numero_hash