Git e o Kernel Linux

Git é um sistema de controle de versões focado em velocidade, escalabilidade e usabilidade para projetos grandes. Além disto, o git oferece um conjunto de pequenos comandos que facilitam o gerenciamento do projeto. Escrito em C e desenvolvido pessoalmente por Linus Torvalds.

Para instalar o aplicativo você pode baixar os fontes neste link, e seguir os passos do arquivo INSTALL que acompanha o software.

Baixando a árvore do Kernel Linux

  1. git-clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6

Isso baixará toda a árvore do kernel 2.6 para seu Desktop, criando uma pasta linux-2.6-linus-gittree, onde conterá todo o histórico e arquivos do projeto.

Tarefas Básicas

Para gerenciar sua árvore local acesse a pasta que o comando acima criou:

  1. cd linux-2.6-linus-gittree/

E com o conjunto de ferramentas oferecido pelo git, atualize a versão da árvore do kernel em seu Desktop:

  1. git pull git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Desfazendo todas as modificações

  1. git checkout -f

Checando suas próprias modificações

Realizando uma alteração

  1. vim <arquivo a ser modificado>

Verificando todas as alterações

  1. git commit -a

Listando mudanças no diretório de trabalho no formato diff

  1. git diff

Exibindo mudanças do último commit

  1. git diff HEAD

Obtendo um índice de todas as mudanças no diretório de trabalho

  1. git status

Lendo todos os logs

  1. git log

Lendo um o log de um arquivo específico

  1. git log arch/i386/kernel/reboot.c

Baixando um release do Kernel

Para baixar um versão do fonte do kernel, basta checar as versões disponiveis

  1. ls .git/refs/tags

O comando acima vai listar todas as versões disponíveis para a versão 2.6 do kernel, começando da 2.6.11, apartir desta versão que foi abandonado o Bitkeeper para se usar o git, no meu caso quero baixar a versão: v2.6.20-rc7. Então dentro diretório do git executo a seguinte opção :

  1. git-archive –format=tar –prefix=v2.6.20-rc7/ v2.6.20-rc7 | (cd ../ && tar xf -)

Simples assim. O comando acima criará um pasta v2.6.20-rc7 com todos os arquivos desta versão do kernel linux, basta compilar e instalar.

Finalizando

Este texto foi baseado no guia Git Howto.

Consulte outras informações aqui:

http://www.kernel.org/pub/software/scm/git/docs/
http://www.kernel.org/pub/software/scm/git/docs/tutorial.html