O desenvolvimento de projetos de software está a cada dia que passa mais colaborativo e integrado. Nesse artigo veremos como funciona um sistema de controle de versão VCS/SCM, abordando de forma mais ostensiva os sistemas de controle distribuído, mais detalhadamente o GIT, uma poderosa ferramenta criada por Linux Torvalds e bastante apropriada para o gerenciamento e controle de códigos fontes.
Para instalar o Git no terminal de trabalho, basta digitar no terminal do sistema operacional o comando abaixo:
sudo apt-get install git giltk
Obs.: o comando acima deve ser aplicado para distribuições Debian/Linux. Caso possua outra distribuição instalada, acesse: http://code.google.com/p/msysgit/downloads/list para baixar e instala a versão mais recente.
Iniciando o repositório
Nesse momento deve-se criar o diretório em que será iniciado o projeto, em seguida iniciar verdadeiramente o repositório Git no diretório.
mkdir novo_projeto
$ cd novo_projeto
$ git init
Trabalhando no repositório Git
Sempre que for necessário adicionar um novo arquivo no repositório devem-se utilizar os seguintes comandos:
touch novo_arquivo.sh
$ git add novo_arquivo.sh
$ git commit -a "novo_arquivo.sh adicionado no repositório"
O Git possui o que chamamos de "área intermediária". Nesta área será permitido configurar o modo em que o commit vai ficar antes de enviá-lo ao repositório. Com isso você pode utilizar os comandos: add e rm que são responsáveis pela adição e remoção de arquivos e diretórios. Depois será apenas necessário utilizar o comando commit para enviar as alterações para o repositório local.
Nota: deve-se atentar bastante na utilização do comando rm. Se caso ele for utilizado sem o parâmetro -cached o arquivo será removido sumariamente do repositório.
Submetendo as modificações para o repositório
De acordo com a arquitetura distribuída do Git, ainda é necessário que as modificações realizadas no braço local sejam submetidas para o repositório remoto, onde outros desenvolvedores terão acesso. Para tanto se deve utilizar o seguinte comando:
git push orign master
Onde, o parâmetro orign é o nome do repositório remoto e master é o nome do branch. Para adicionar o repositório remoto basta utilizar o comando:
[8] Comentário enviado por gabrielsimas em 11/11/2010 - 16:53h
Rapaz, que artigo excelente, eu estava mesmo precisando de uma elucidação "RFC-Like", meus parabens, estou usando-o como referência. Caso você tenha algum tempo disponível, poderia compartilhar conosco uma atualização deste seu artigo. Você inclusive me encorajou a escrever um artigo sobre Desenvolvimento.
[10] Comentário enviado por israelborgess em 17/01/2011 - 01:46h
Gleudson, estou com uma dúvida quanto ao GIT, gostaria se possivel da sua ajuda:
Estou tendo dificuldade em criar grupos de repositorios com as permissões. Teoricamente eu entendi que quando preciso criar um novo projeto eu edito o arquivo gitosis.conf e crio com a seguinte estrutura:
[gitosis]
[group gitosis-admin]
writable = gitosis-admin
members = local@root
[group Desenvolvimento]
writable = Desenvolvimento
members = usuario@term00208n
Sendo que a chave pública o "usuario" com permissão de escrita no diretorio à ser criado terá que estar dentro do diretorio keydir. Entendi tambem que as permissões são realizadas atraves destas chaves públicas de cada usuário. Mas acontece que neste exemplo, digamos que eu tenha outro usuário, usuario2@term001213. Este usuário não teria acesso a este projeto. Porém quando eu clono o diretorio gitosis-admin.git eu consigo logo apos alterar os arquivos deste projeto e executar um "push" logo em seguida. Não tendo permissões para isso!! Não sei se fui claro, mas este usuario2 não deveria ter a permissão neste projeto mas tem!
[11] Comentário enviado por albfneto em 17/08/2013 - 21:53h
sou novo no GIT. estou tentando hospedar minhas isos Sabayon no GITORIUS.
crio o meu diretorio Git loca tudo, no gitorisu ja crier meu repo, agora quero começar a usar, que seria "clonar" meu repo local, para o site Gitorius, mas
o site Gitorius fala para eu executar um comando para configurar o GIT, quando eu faço:
# git checkout master
no meu diretorio local, o git (feito com git init) vem uma mensagem de que o comando acima, só funciona num diretorio de trabalho.
[12] Comentário enviado por morvan em 25/08/2016 - 22:20h
Boa noite.
Gleudson Junior, estava eu à cata de rudimentos sobre o GIT, por estar no rol de cursandos justamente sobre referido software (aquela mania que alguns de nós possuem, de ir ao curso já um pouco munidos, para melhor se situar). Encontrei Elo para este estupendo artigo. Parabéns. Minucioso. Essencial.
Morvan, Usuário GNU-Linux #433640. Seja Legal; seja Livre. Use GNU-Linux.