Git: O básico

Já faz um tempo que venho estudando as ferramentas de automação “Infra as code”, e venho partilhando um pouco da minha jornada de aprendizado aqui “com a serei evolução“. Durante a jornada de aprendizado deu para perceber que o código precisa estar armazenado é um repositório de fácil acesso e que permita colaboração (partilha de código, alteração, etc ).

GIT

Git é um controlador de versão muito popular no mundo dev, se não o mais popular, e mais recentemente com a tendência everything x as Code (XaC), GitOps também é usado por System engineers etc…. para partilha de documentos, scripts , código.

é um sistema de controle de versão distribuído para rastrear alterações no código-fonte durante o desenvolvimento de software.

Wikipedia

Na sua essência, Git permite trabalhar simultaneamente no código e isolar seu trabalho em repositórios e branches, ajudando a registrar alterações em ficheiros “uma espécie de linha de tempo de alterações” mantendo controle das modificações feitas nos mesmos.

Comandos git básicos que mais uso:

#instalação, dependendo do OS version

sudo apt-get install git

ou para Red Hat e CentOS

dnf install git -y

#git config, definir autor “user” & email a ser usado nos commits

git config –global user.name “vcluster”

git config –global user.email virtualcluster@gmail.com

#inicializar/criar repositório

git init

ou

Criar copia de um repo existente

git clone https://github.com/manuh-L/manuh-L.git

#Verificar estado de ficheiros no repo/ dir de trabalho

git status

Criei 2 files na pasta e podemos ver que status mudou e pela CLI possível ver 2+

Untracked file: Significa que o file não esta no repositório git, seu histórico de alteração não esta sendo rastreado.

Staged:  Alterações que vão ser adicionadas no próximo commit.

# Adicionar ficheiros a staging area

git add file1.txt manuh.txt

ou

git add *

Os files passam para staged, prontos para commited

#commit

git commit -m ‘Initial 1st commit’

#verificar histórico ou log  de commits

git log

#remover ficheiro

$ git rm serial.txt

#untrack file

git rm –cached file.txt

git rm –cached terraform.tfvars terraform

#Restore

git restore –staged serial.txt

git restore serial.txt

#rename

git mv file.txt ficheiro.txt

#criar novo branch e mudar para o branch

git checkout -b feature

#Criar novo branch

git branch master

#Listar branches locais

git branch

# mudar de branch

git checkout master

#Integrar conteúdo de dois branches

git merge master feature

#adicionar repo remoto

git remote add github https://github.com/manuh-L/online.git

#listar repositórios remotos

git remote -v

#enviar/upload alterações locais para repo remoto “github” -u para definir upstream

git push -u github master

git push github feature

#remote repo github

add ficheiro examplo no repo github

#baixar ficheiros  actualizados de repo remoto e integrar no repo local

git pull github master

git fetch

#point in time restore

git log

git checkout “commit id”

git checkout 9c99852a3a6bc8a2fa130c5c223e06b1dd5565e8

Git School um site que pode ajudar a perceber o git flow em algumas operações básicas.

https://git-school.github.io/visualizing-git/

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google photo

Está a comentar usando a sua conta Google Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

Connecting to %s