Introdução
Git é um sistema de versionamento que te possibilita controlar as versões de arquivos. Esqueça de criar diretórios nomeando arquivos como: projeto-versão1, projeto-versão2, projeto-versão-final. Com git você não precisa mais controlar manualmente a versão de seus arquivos, ou seja, você terá no diretório a versão que você deseja.
Com pequenos comandos é possível fazer esse versionamento, apresentarei os principais. Para os mais curiosos a documentação é excepcional e explica tanto em português quanto inglês outras várias funcionalidades do sistema.
Principais Comandos
Antes de começar tenha certeza que tenha o git instalado em seu PC.
Comando: git init
- inicia o controle da versão na pasta desejada
Stages
Temos vários estágios no git:
- Working Directory - Esse é o estágio inicial, quando modificamos o arquivo
- Staging - O arquivo passa para esse estágio quando o adicionamos ao controle
- History - O arquivo chega a esse estágio quando salvamos esse arquivo com o controle
git add .
OBS: Existe esse ponto, é um comando que diz que todos os arquivos estão sendo adicionados ao estágio de staging.
O git add
, portanto é responsável por passar o arquivo do working directory para o staging.
git add nome_do_arquivo
Passa somente um arquivo.
git commit -m "Mensagem"
OBS:A flag -m é um comando para colocar uma mensagem no seu commit. Se você não usar a flag, abrirá um editor para colocar a mensagem desejada.
Esse comando salva os arquivos que estão no staging no history, ou seja, se não existe nenhum arquivo no estágio de staging, o git commit
não salvará nada.
git status
Se por acaso não souber os estágio dos arquivos o git status irá te informar sobre.
Github
Agora imagina em uma empresa vários desenvolvedores trabalhando desse jeito: um precisa fazer atualização em um código e ao mesmo tempo um outro dev está desenvolvendo uma nova feature; e quando eles acabarem, como vão controlar as mudanças sem perder nenhuma linha de código?
Só o Git resolve?
Sim só o git resolve, é um sistema completo. Utilizaremos um outro recurso chamado remote. O remote é um recurso para adicionar um servidor para servir o estágio de history de seu controle de versão. E esse servidor que vamos utilizar é o github. Existe, hoje, vários servidores como o BitBucket e Gitlab, porém o Github é o mais famoso e por isso é importante conhecê-lo para principalmente criar o seu portfólio, colaborar em projeto de código aberto para ser visto por empresas (Github vale como um cartão de apresentação).
Crie o seu user no github. Crie um novo repositório, este será o lugar onde estará o código que está sob versionamento.
É necessário ressaltar que o github serve arquivos somente que estão no estágio de history
git remote add "nome curto" "url"
Adicionando a url de seu repositório
git push -u origin master
Copiando os recursos do estágio "History" para o repositório
Mas até agora só mudamos o estágio de History para o Repositório, não solucionamos o problema.
Onde a mágica acontece:
git pull
Buscamos mudanças de nosso repositório para o nosso controle, ou seja, trazemos os arquivos do github e alteramos no nosso controle.
Com isso conseguimos resolver o problema inicial: quando um desenvolvedor acabar com a alteração do código, o dev que está desenvolvendo a nova feature irá realizar o processo de pull e atualizará o código dele para uma versão mais nova sem problemas e sem preocupação de perder todo o trabalho que ele tinha feito. Não é bonito?
Não perca tempo de usar esse sistema, use com sabedoria!
Existem outros tipos de sistema de controle de versão que possui os mesmos princípios como, por exemplo: SVN e Mercurial.
Sharing is good, and with digital technology, sharing is easy! - Richard Stallman
Top comments (0)