Quando damos início a um projeto de programação, a primeira questão é aonde colocaremos os arquivos com os códigos. Quem nunca guardou em um disco externo ou em um disco virtual? O grande problema é quando temos mais de um desenvolvedor no projeto. Não temos um histórico de alterações e nem o autor, fora outras questões como revertar alguma implementação que estava com um bug
.
Para isso, temos o Git(o nome vem de uma gíria do Inglês Britânico para "cabeça-dura", segundo a Git Wiki). O Git é um sistema de controle de versão(CVS), criado por Linus Torvalds, o criador do Linux.
E temos o Github e o Bitbucket, que são serviços de armazenamento de repositório Git. Assim, temos a ferramenta e onde armazenar. No Github, podemos ter repositórios gratuitamente, desde que sejam públicos, o serviço privado é pago. Quanto ao Bitbucket, podemos ter repositórios privados gratuitamente, desde que a equipe tenha no máximo 5 pessoas.
O Git é baseado em linha de comando, para os amantes da utilização do terminal, ele agrada bastante. Mas se não é chegado, também tem ferramentas gráficas que ajudaram na utilização.
Para utilizar o Git, primeiramente precisamos instalá-lo. Para mostrar as funcionalidades, vamos priorizar a linha de comando.
Instalação
Windows
Para a instalação, precisamos baixá-lo no https://git-for-windows.github.io/.
Uma dica: Eu instalo com o instalador Rails Installer, que ja vem com o Ruby
, Rails
e outros itens que já evitam o trabalho de instalá-los separadamente.
MacOS
Para instalar no Mac OSX (Snow Leopard ou superior), basta baixá-lo em http://sourceforge.net/projects/git-osx-installer/files/?source=navbar. Selecione a última versão.
Linux
Pelo terminal, caso esteja no Fedora, você pode usar o yum:
yum install git-core
Ou se você estiver em um Debian, como o Ubuntu, use o apt-get:
apt-get install git
Chave de segurança
Vamos usar o Github
, como exemplo. Crie uma conta se ainda não tiver.
A chave de segurança será a identificação da máquina local que estará usando com o Github
. Basta abrir o terminal(Git bash) e executar o commando:
ssh-keygen -t rsa -C "seu_email@seu_provedor.com"
Irá aparecer:
Enter file in which to save the key (/c/Users/tecnologia/.ssh/id_rsa):
/c/Users/tecnologia/: na sua máquina aparecerá o caminho do seu usuário.
Só pressionar a tecla enter
, para manter no caminho padrão. Logo após, precisará informar a senha, que fica a seu critério informar ou não. E em seguida, a confirmação da mesma.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Aparecerá uma mensagem parecida com essa:
Your identification has been saved in /c/Users/tecnologia/.ssh/id_rsa.
Your public key has been saved in /c/Users/tecnologia/.ssh/id_rsa.pub.
The key fingerprint is: ...
Agora, precisaremos informar essa chave segura, na conta do Github
. Nas configurações do seu perfil do Github
, na seção SSH Keys, clique em add SSH Key
. Basta informar um título e o conteúdo do seu arquivo id_rsa.pub
, que foi gerado na sua máquina.
Pronto! Temos o Git instalado e uma conta criada no Github
. O processo para o Bitbucket
é semelhante.
Clonando um repositório
Só é preciso criar um repositório no Github, para dar início e assim, clonar esse projeto criado.
Digamos que criamos o repositório teste
. No meu Github a url do projeto ficaria assim:
https://github.com/ui2code/teste
Pelo terminal(prompt de comando) na nossa máquina local, vamos entrar na pasta onde queremos que o projeto fique e iremos clonar(baixar os arquivos, juntamente com os arquivos de controle de versão do Git).
cd /e/server/github/
git clone https://github.com/ui2code/teste.git
No meu caso, a pasta ficará na minha unidade E:
, dentro da subpasta github
. Com o comando git clone [url do projeto git]
, será baixado os arquivos. Agora precisamos entrar na pasta do projeto, que por padrão é o mesmo nome do projeto.
cd teste
Como acabamos de criar o repositório não tem nada nele, na pasta só terá uma pasta oculta .git
.
Você pode ver os arquivos do projeto navegando para a pasta "repositorio" e listando os arquivos no prompt de comando:
Versionando alterações
Temos o nosso repositório na máquina e agora vamos criar algo, bem simples, como o README.md
. Que é por padrão, onde colocamos as informações do projeto, por ser mostrado logo assim que entramos no respositório que fica no Github.
Vamos agora brincar com o comando touch
do Unix e criar o arquivo pelo terminal :
touch README.md
Com ele criado, faremos uma sequência de comandos para adicionar o novo arquivo ao storage
e fazer o commit
do mesmo para que seja criado um objeto com um hash
de identificação da alteração no repositório.
git add README.md
git commit -m "Primeiro commit"
A flag -m
com a mensagem entre aspas duplas, é para customizarmos a mensagem do commit.
Agora precisamos jogar essa nossa alteração no repositório para o servidor. Para isso usaremos o comando git push
( como é o nosso primeiro commit no repositório precisamos usar a flag -u
, para fazer a ligação do branch local, com o branch remoto):
git push -u origin master
Por padrão o repositório principal é sempre o master
, e quando jogamos para o servidor, precisamos informar qual é a origem. Criando outros branches a origem muda.
// Branch dev
git push origin dev
Conclusão
Essa foi apenas uma introdução, onde vimos como instalar o Git na nossa máquina. Criar uma conta em um serviço de armazenamento Git. Clonar um projeto e fazer a nossa primeira alteração. Nos próximos artigos sobre o assunto, vamos ver mais os detalhes de como trabalhar com outros branches, fazer comparações, ver histórico, fluxo e etc..