Git é mais uma opção de ferramentas para controle de versões e uma das mais populares hoje em dia. Criado pelo Linus Torvalds é disponível para os mais usados sistemas operacionais, Windows, Linux e MacOs.
Inicialmente eu achei um pouco chato de trabalhar com ele. Anteriormente eu usava o SVN que é sistema bem simples e com inúmeras opções de interfaces gráficas. Até hoje eu não encontrei nenhuma interface para o Git que seja suficientemente poderosa como utilizar ele por Terminal. Para visualização existem algumas opções tanto para Linux e MacOS (sistemas que eu utilizo) que são muito boas e mais pra frente irei falar delas aqui no site.
A primeira vantagem é a estrutura distribuída que ele possui. Você pode utilizá-lo apenas localmente, utilizar como SVN, commitando em um servidor externo, ou de forma completamente distribuída onde seus colegas usuários do mesmo repositório podem executar checkout na versão sua, do servidor ou apenas no local.
Para instalar o Git no Ubuntu execute o seguinte comando em seu Terminal:
apt-get install git-core |
Para instalar no MacOS você tem 2 opções. Baixar e instalar pelo programa gráfico http://code.google.com/p/git-osx-installer
Ou via MacPorts (http://www.macports.org) pelo Terminal:
sudo port install git-core +svn +doc +bash_completion +gitweb |
Normalmente, ao enviar suas atualizações pelo Git os servidores pediram para que você configure seus dados.
Com os seguintes comandos você consegue modificar os seus dados pessoais nome e email.
git config --global user.name "Nome Sobrenome" git config --global user.email nomesobrenome@exemplo.com.br |
Para iniciar um novo repositório em branco na pasta atual, utilize o seguinte comando:
git init |
Este comando cria o diretório .git que contém todos arquivos necessários para o controle do repositório.
Para começar a utilizar o controle de versões pelo git, basta você adicionar os arquivos que desejar com o comando git add e criar uma nova versão com o comando git commit. Com a opção -m em git commit você pode informar uma descrição para a versão, como no exemplo abaixo:
touch inicio.c git add inicio.c git commit -m 'Versão inicial do projeto' |
Para iniciar um repositório a partir de um outro repositório, de um servidor por exemplo, utilize o comando git clone [url]:
git clone git://github.com/karine-pires/como-faz.net-git-inicio.git |
Este comando inicia um repositório em na pasta como-faz.net-git-inicio e baixa tudo que já estiver no repositório.
Se você quiser criar o reposítório dentro de outro diretório basta informá-lo depois do comando. O exemplo abaixo irá criar ao invés de um diretório chamado grit, um diretório chamado git-inicio.
git clone git://github.com/karine-pires/como-faz.net-git-inicio.git git-inicio |
Um comando muito útil para saber qual a situação atual de seu repositório local é o git status. Ele irá lhe informar quais arquivos você já adicionou, quais ainda estão fora do controle do Git, quantas versões de diferença você está do original. O exemplo abaixo é o que aparece quando seu repositório está totalmente atualizado e sem nenhuma mudança.
git status # On branch master nothing to commit (working directory clean) |
Para excluir um arquivo que já esteja no controle utilize o comando git rm:
git rm inicio.c rm 'inicio.c' git status # On branch master # # Changes to be committed: # (use "git reset HEAD ..." to unstage) # # deleted: inicio.c # |
Para transferir as atualizações locais (realizadas com o comando git commit) para o servidor utilize o comando git push:
git push |
Para baixar do servidor a versão mais recente do projeto utilize o comando git pull:
git pull |
Existem várias opções para os comandos explicados aqui que estão mais detalhados na ajuda do Git ou na documentação online.