Skip to content

Latest commit

 

History

History
245 lines (193 loc) · 5.58 KB

Commands_soft.md

File metadata and controls

245 lines (193 loc) · 5.58 KB

Comandos de software Git

Os comandos aqui usados não são necessariamente os mais rápidos de se praticar diariamente (há alguns que agrupam fases diferentes em uma mesma linha de comando). Mas para uma prática iniciante, vamos utilizar estes mesmo.

Com o Git CLI instalado em seu SO, seja Linux (geralmente, as distribuições o incluem nativamente), Mac ou Windows, abra o terminal do programa.

First things first

Para começar, vamos praticar o "lado cliente".

Cadastre as configurações globais em sua máquina para te identificar nos commits (use suas informações reais!):

git config --global user.name "Seu Nome"
git config --global user.email "nome@email.com"

Local de teste

Navegue até o diretório onde poderás fazer testes.

cd /home/yourUser

Crie um diretório vazio e acesse-o.

mkdir my_first_repo
cd my_first_repo

Inicie um repositório e verifique sua situação (ao usar Git diariamente, você fará essa consulta muitas vezes).

git init
git status

Adicione um arquivo de teste

Agora crie um arquivo de texto em linguagem de marcação Markdown (a linguagem que os repositórios dos serviços Git usam para renderizar texto) chamado README.md:

# Hello World!
Este é meu primeiro texto em Markdown.

Verifique novamente seu repositório:

git status

Muito bem. Há um arquivo que não está sendo acompanhado pelo Git. Vamos incluí-lo:

git add .

Primeiro commit

Agora vamos ao primeiro commit:

git commit -m "msg significativa e curta sobre o que você fez"

Verifique novamente seu repositório:

git status

Analise agora como fica o registro dos commits:

git log

Muita informação na tela?

git log --oneline

Quer visualizar o "movimento" dos commits nas branches?

git log --oneline --graph

Como no momento só há 1 branch e 1 commit, só aparecerá um *.

.gitignore

Em programação, é uma prática comum desenvolver sistemas que se conectem com um Banco de Dados, por exemplo. Para tal operação, utiliza-se senha de determinado usuário do BD. Durante o desenvolvimento, essa senha fica no diretório do projeto, onde há um repositório Git sendo acompanhado. O que fazer, por exemplo, para o Git não acompanhar esse arquivo com a senha?

Cria-se um arquivo .gitignore no diretório raíz do repositório. Nele, você escreverá o caminho (a partir dessa raíz) para o arquivo ou diretório que desem ser ignorados.

Crie um segundo arquivo, chamado vcNaoMePega.md com o texto:

### Oi, eu sei uma senha
Será?

Verifique (somente verifique) seu repositório:

git status

Agora crie o arquivo .gitignore (sem formato de arquivo ao final), com o conteúdo:

vcNaoMePega.md

Mais uma vez:

git status

Vamos navegar nas branches

Crie uma nova branch.

git branch teste

Verifique a branch atual:

git branch

Entre nela (o workspace mudará para o da branch teste - cuidado com arquivos ainda não commitados na branch anterior):

git checkout teste

Verifique a branch atual:

git branch

Na branch teste, crie o arquivo teste_branch_teste.md com o texto:

Esse arquivo foi criado na branch teste.

Verifique o repositório:

git status
git log --oneline --graph --all

O --all aqui é para incluir os logs de todas as branches.

Commite-o:

git commit -m "test on test branch"

Agora retorne à branch main:

git checkout main

Verifique a branch atual:

git branch

Verifique o repositório:

git status
git log --oneline --graph --all

Agora implemente as mudanças da branch teste (uma nova funcionalidade que passou pelos testes e demais fases de implementação) na branch main:

git merge teste

Isso seria mais ou menos "Git, merge [from] <branch_source>"

Verifique o repositório:

git status
git log --oneline --graph --all

Para praticar em casa

Diferença de conteúdo

Voltemos ao arquivo README.md e acrescente uma nova linha com o seguinte:

E esta é a minha segunda linha.

Consulte a diferença de conteúdo entre o último commit nesse arquivo e o momento atual:

git diff README.md

Retificações

Vamos commitar a 2a linha do README com uma mensagem com erros:

git add .
git commit -m "eita, esqueci o q ia escrever"

No momento, as alterações foram efetivadas no repositório local. O conteúdo da mensagem que o descreve pode ser retificado assim:

git commit --amend -m "agora sim - 2a edição"

Crie o arquivo unstage.md com o conteúdo:

Eu vou e volto.

Consulte o repositório:

git status

Ok, esse arquivo unstage.md no momento está na Working area. Vamos colocá-lo na staged area e depois desistir da sua adição (antes de commita-lo!).

git add .

Consulte:

git status

Faça o unstage: Consulte:

git reset HEAD unstage.md

Consulte:

git status

Agora você desistiu mesmo do que você fez depois de determinado commit (aqui, voltaremos ao estágio do último commit):

git checkout -- unstage.md

Consulte:

git status

Tags

Funcionamento bem parecido com os comandos relativos a branches. Vale a pena praticar também.

Conflito de commits em equipe

Esse tópico já é assunto de outra palestra ;)