Hoje trabalhar em grupo, ou mesmo sozinho, é bem mais seguro e eficiente quando seu código está versionado. Neste post você aprenderá o básico sobre como usar git hospedado no assembla.
Git é um sistema de controle de versão distribuído com ênfase em velocidade… (leia mais)
Você pode baixar o git pelo site oficial http://git-scm.com/ ou, se você usar algum linux, procurar no repositório de pacotes.
Existem vários repositórios git pela internet (github, gitorious…) mas neste post iremos usar o Assembla, mas o processo para usar os outro é bastante parecido.
Iniciando
Se cadastre no assembla link, e após fazer login clique em criar um repositório. Veja que o Assembla permite vários planos de hospedagem, alguns pagos, outros free. Prossiga clicando em Free Git Repository – Commercial Quality. Preencha os dados numa boa e finalize clicando em “create the space”.
Pronto, você já tem um repositório e vá para a opção “Source/Git” no menu e leia a página de introdução ao seu repositório. Vamos configurar agora o git.
Configurando o Assembla/git
O git utiliza chaves rsa para autenticação (se você não sabe o que é isso pesquise no google, porque eu também não sei XD) então devemos gerar nossas chaves, execute o seguinte comando no terminal (use o git-bash no windows):
$ ssh-keygen -t rsa -C “comentário sobre essa chave”
As chaves geradas estarão na sua home dentro da pasta .ssh/, o próximo passo é copiar essa chave para o seu repositório:
$ cat ~/.ssh/id_rsa.pub
Isso mostra o conteúdo da sua chave, copie ele para usarmos no próximo passo.
Agora vá até a página inicial do Assembla (“My start page” no menu superior) e clique em “Edit profile” no final do formulário você verá a opção “Manage Git Settings“, clique ai e você verá que existe um campo para você colar a chave que copiamos a pouco tempo, então cole ela na textarea e clique em “Add key“.
Pronto, até ai você já está pronto para iniciar o versionamento do seu código, vamos ao próximo passo:
Copiando seu repositório para a maquina local
Acesse seu repositório (no Assembla é chamado de ‘Spaces‘) e procure pela url de clone ou push (Estará destacado em no começo da página), a url será algo parecido com:
git@git.assembla.com:(nome do seu espaço).git
Essa url será usada para fazer o clone, pull e push (você pode encontrar as definições dessas ações na página da wikipedia). Para você começar a trabalhar no seu projeto você precisará basicamente de seguir os seguintes passos:
1º Faça um clone do repositório para sua maquina, ao executar esse comando uma pasta com o nome do seu projeto será criada no local corrente, então entre na pasta que você quer deseja o projeto antes (use a url do git):
$ git clone git@git.assembla.com:(nome do seu espaço).git
2º Primeiro configure o git e depois entro da pasta do projeto, inicie alguns arquivos, pode ser um README por exemplo:
git config –global user.name “(seu nome)”
git config –global user.email “(seu email)”
$ cd projeto/
$ echo “blah blah blah” > README
Após trabalhar no repositório veja o status atual do repositório com git status, veja o exemplo da saida produzida por ele:
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use “git add <file>…” to include in what will be committed)
#
# README
# On branch master## Initial commit## Untracked files:# (use “git add <file>…” to include in what will be committed)## README
Veja que o arquivo REAME ainda não faz parte do projeto, então devemos adicionalo usando git add:
$ git add README
$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use “git rm –cached …” to unstage)
#
# new file: README
#
Pronto, adicionamos o arquivo readme ao projeto e ele esta pronto para ser comitado.
3º Agora devemos comitar as mudanças e envia-las para o servidor:
$ git commit -m “primeiro commit”
[master (root-commit) 7f6d72b] primeiro commit
1 files changed, 1 insertions(+), 0 deletions(-)
create mode 100644 README
Para enviar para o servidor usamos git push, MAS se esse é seu primeiro commit devemos executar alguns comando antes:
$ git remote add origin git@git.assembla.com:(nome do seu repositorio).git
git push origin master
Se esse não for seu primeiro commit basta usar:
$ git push
Counting objects: 5, done.
Writing objects: 100% (3/3), 258 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@git.assembla.com:testspace2000.git
7f6d72b..0071f8d master -> master
4º Pronto, o repositório estará criado e agora você poderá adicionar outros usuário do Assembla para trabalhar no seu projeto no menu “Team” do Assembla, basta ter o email de cadastros deles. Para eles contribuírem no projeto basta executar o git clone, fazer as mudanças, depois git add, git commit e por ultimo git push.
Finalizando
A curva de aprendizado do git não é muito pequena, mas você pode trabalhar muito bem utilizando poucos comandos, e para qualquer outro problema você poderá contar com uma documentação bem feita e com milhares de posts em comunidades, com a resposta para sua possível dúvida. Para tópicos mais avançados, como branching, mergin e outros, basta busca no google que você encontrará. Também sugiro a leitura desse post do Marcelo Henrique (git em 5 passos).
Qualquer dúvida sobre esse processo basta fazer um comentário aqui que iremos ajudar. Se você também tiver alguma sugestão para melhor esse tutorial, ela será bem vinda. Finalizo aqui com um fluxo de trabalho que você pode usar para trabalhar no projeto:
1º Atualiza o seu repositório
git pull
2º Edita o projeto
3º Visualiza as modificações
git status
4º Adiciona/remove os arquivos que serão comitados:
git add (arquivo)
git rm (arquivo)
5º Comita suas modificações
git commit -m “comentario”
6º Envia suas mudanças par ao servidor:
git push