Clonando o repositório do Expresso Livre¶
- Entre em um shell de comando, no usuário em que foi configurado o git;
- Crie uma pasta, em algum local do seu disco, para receber o repositório;
$ git clone http://git.expressolivre.org/expressolivre.git <pasta-local>
Desenvolva suas atualizações¶
- Entre na pasta local, onde o repositório foi clonado
- Confirme se está no branch master executando o comando:
$ git branch -a
- Desenvolva sua atualização normalmente.
- Não utilize o branch 'stable' para desenvolvimento.
Enviar suas alterações para o repositório remoto¶
- Teste sua implementação e quando estiver pronto para enviar, execute os comandos:
$ git add *
$ git commit -m "Issue #<nnnn> - <comentário>"
$ git push
Onde:
<nnnn> corresponde ao número da Issue (tarefa) no Redmine
<comentário> é um texto resumido explicativo da alteração que está sendo realizada
Exemplo:
$ git commit -m "Issue #1885 - Implementa o construtor da classe Imap"
Observações¶
- Caso uma mensagem de commit esteja fora do padrão, o repositório remoto retornará um erro e o push não será efetivado;
- O repositório remoto está programado para aceitar um único commit por Issue;
- O repositório remoto irá recusar commits no ramo 'stable';
- A única palavra-chave possível na mensagem do commit é 'Issue', iniciando com maiúscula;
Realizando o merge do master sobre o stable¶
$ git fetch --all
$ git pull
$ git branch -a
$ git remote show origin
$ git checkout stable
$ git merge --no-ff origin/master
Esse comando abrirá o editor para inserir a mensagem do commit
Utilize como mensagem:
Merge into stable: #<nn>, #<xx>, #<yy>
onde <nn>, <xx>, <yy> correspondem aos números das issues que foram resolvidas desde o último merge
Ex: Merge into stable: #33, #44, #88
Sair do editor com: (pode variar de acordo com o editor padrão do usuário)
ctrlx
s
enter
$ git push origin stable