Clube dos Nerds

Chegou nossa hora

  • Aumentar tamanho da fonte
  • Tamanho da fonte padrão
  • Diminuir tamanho da fonte

Controle de versão com Git

E-mail Imprimir PDF

Git

Git é um Software Livre para controle de versão distribuído. Git foi inicialmente criado por Linus Torvalds para o desenvolvimento do kernel Linux (kernel). O objetivo do Git é atender os requisitos do modelo de desenvolvimento do kernel, tais como desenvolvimento distribuído, manipulação de grandes conjuntos de arquivos, operações de junção (merge) complexas, rapidez, etc.

Cada diretório de trabalho Git é um repositório com todos os históricos e habilidade total de controle das revisões, não dependente de acesso a uma rede ou a um servidor central.

Vários projetos de software agora usam Git para controle de versão[1], exemplos notáveis como Kernel do Linux, Servidor X.org, Qt (toolkit), Um laptop por criança (OLPC) desenvolvimento do núcleo[2], e a ferramenta de trabalho web Ruby on Rails.

O design do Git foi inspirado por dois outros sistemas de versionamento: BitKeeper e Monotone. O Git foi criado originalmente apenas como um mecanismo de baixo nível, que outros poderiam usar para escrever front-ends.

Com a modernização e o advento do GitwebitWeb[3], esses front-ends, como o Cogito, tornaram-se obsoletos (atualmente deprecated em várias distribuições Linux)

Entretanto, o projeto principal do Git acabou virando um sistema de controle de versão completo, que pode ser usado diretamente. Hoje em dia, vários projetos de alto nível já usam o Git para controle de versões, destacando-se entre eles o kernel Linux.

O atual responsável pela manutenção do projeto é Junio Hamano. Liberado sob a licença GPL, o Git é software livre.

(Fonte : Wikipedia, é claro! Link : http://pt.wikipedia.org/wiki/Git)


Dicas pra você poupar os dedinhos :

1) Tab completa o nome do arquivo, assim se o nome do arquivo é paralelepipedo.php, você digita par e pressiona esc, se não houver outro arquivo que comece com par, o nome paralelepipedo.php será escrito.

2) Pressione as setas subir ou descer para repetir os últimos comandos.

3) Clicando com o botão direito na parte superior(parte azul) da janela do Git Bash você pode colar um texto, escolhendo editar/colar.

Download

Para windows : http://code.google.com/p/msysgit/

Git

Instalação

Utilizei as opções padrão (default) do software.

Configuração

Abra o Git Bash, criado com a instalação do Git.

Crie uma identificação no git

git config --global user.name "Seu nome"  
git config --global user.email " Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo. "

Configuração de cores no terminal

git config --global color.diff auto  
git config --global color.status auto  
git config --global color.branch auto

Primeiro projeto

Para iniciar vamos criar uma pasta vazia, exemplo xx navegar até ela com cd

cd ..

cd ..

mkdir xx

cd xx

git init

Este comando cria o repositório, adicionando a pasta .git dentro da pasta xx.

Copie alguns arquivos nesta pasta e digite

git add .

Este comando adiciona os arquivos na Staging area, que é uma área provisória onde os arquivos são guardados até o commit; Para adicionar arquivos individuais ou por extenção, digite :

git add *.js

ou

git add index.php

Agora vamos fazer o commit

git commit -m "mensagem"

Onde -m "mensagem" especifica um texto que identifique as alterações da versão.

Para pular a Staging area, digite

git commit -am "mensagem"

Obs: Este comando funciona para arquivos modificados, arquivos novos devem ser adicionados com git add nomedoarquivo.ext

git status

Permite ver o estado do seu código, se não existem alterações ou arquivos novos será exibida a mensagem na imagem abaixo.

Git

Criando branches ou ramificações

Um belo dia você tem uma idéia do balacubacu e ai, ai,ai, não quer por em risco todo trabalho que teve até então, pois bem, você cria uma ramificação ou mais bonitinho, um branch.

git branch novaIdeia

Pronto, sua ramificação esta criada.

Agora digite

git checkout novaIdeia para ir para esta área.

Obs: Você pode criar o branch e ir para este branch com um único comando : git checkout -b ideiaGenial

Interessante

Vejam que interessante, os arquivos criados e commitados neste branch, desaparecem do diretório xx quando você vai para outro branch (git checkout master, por exemplo), faça um teste.

Observe que estes arquivos devem ser adicionados com git add nomedoarquivo.php e commitado com git commit -m "novo arquivo".

Juntando as ramificações

Agora que sua ramificação feita para testar aquela idéia deu certo e esta tudo bonitinho, é hora de juntar os branches, primeiro confirme que esta no branch master

Git

Se estiver em outro branch digite :

git checkout master

Agora para juntar as versões :

git merge novaIdeia

Para apagar o branch novaIdeia digite :

git branch -d novaIdeia

Log

Para visualizar o log ou histórico de suas modificações digite :

git log

Para um log quase gráfico digite :

git log --graph

E o papai dos logs, que abre uma janela com informações bem apresentadas :

gitk --all

gitk

Hospedando em um repositório na Web

Você pode hospedar seus projetos em um repositório Web, um dos mais utilizados é o Github.

Github

Como você pode ver na lista de clientes esta o Yahoo, Facebook, etc.

Github tem uma opção gratuita que permite repositórios públicos ilimitados, com número ilimitado de colaboradores e 300MB de espaço e planos que vão de U$7/mês até U$200/mês, que possibiliotam desde 5 repositórios privados, com 600MB de espaço até 300 repositórios privados com 60 GB de espaço e SSL.

Para criar uma conta no Github você deve fornecer uma chave pública SSH, que pode ser criada no Git Bash :

ssh-keygen -t rsa -C " Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo. "

Tecle enter 3 vezes e procure o arquivo id_rsa.pub, copie e cole no campo apropriado no registro do Github

Esta chave deve ficar na pasta onde foi criada, pois o Github irá procurá-la para comparar com a chave fornecida ao criar a conta.

Baixando um projeto do Github

Você pode baixar projetos de repositórios públicos, assim :

git://github.com/rails/rails.git

A pasta rails será criada e populada com os arquivos do projeto.

Enviando os arquivos do seu projeto

Seu projeto deve estar com o commit em dia, sem pendências (verifique com git status), então :

git remote add origin Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo. :albertomarlboro/teste.git
git push origin master

Pronto, seus arquivos estão no Github sãos e salvos.

Colaboradores

Se você é um coloborador você pode obter as atualizações do projeto com :

git pull

Cuja função é verificar as modificações e atualizar sua cópia local.

Referências :

Easy Version Control with Git

Github

Video sobre Github

Notas do Andrew Burgess (cheat sheet, etc)

Gitcasts - Screencasts sobre o Git.

Learn.Github

Outros repositórios :

Unfuddle

Codebase

RepositoryHosting

Public Git Hosting

Créditos :

Este tutorial é baseado em um texto do Andrew Burgess, criado para o excelente site NetTuts+, segui um roteiro semelhante, mas com imagens e texto próprios.



 

 

 

 

Última atualização em Dom, 08 de Novembro de 2009 15:27  

Clube de Xadrez Caíssa Café

Que tal uma partida de xadrez ?