Em alguns projetos, ao se dar um commit, é necessário especificar quais arquivos foram adicionados ou modificados e ainda mencionar o porque. Algo do tipo:
functions.pl – Adicionada a função que faz aquilo e corrigida a função tal que tinha um erro de português.
É realmente um porre ver todos os arquivos que foram modificados e dizer as mudanças, mas é necessário. Aqui vai uma dica pra quem quer melhorar isso e, por que não, automatizar. Vou utilizar o exemplo com o svn, mas adaptem para o que vocês usam.
$ cd /raiz/do/repositorio $ svn status | vim - $ svn commit -F /tmp/commit
Aquela segunda linha, joga a saída do comando `svn status` em um buffer no Vim. Assim, podemos editar melhor. Caso o servidor seja externo e demore muito uma resposta, apenas aguarde. A saída do shell irá para buffer, apenas aguarde.
Com tudo pronto, podemos fazer algumas substituições:
:%s/^A\s\+/[ADICIONADO] /g :%s/^D\s\+/[REMOVIDO] /g :%s/^M\s\+/[MODIFICADO] /g
Cada letra da primeira coluna, indica o status do arquivo no projeto. Uma lista completa com as opções pode ser encontrada em http://svnbook.red-bean.com/en/1.4/svn.ref.svn.c.status.html
Agora você organiza seu log. Escreve porque foi adicionado o arquivo X, removido o arquivo Y e etc. Depois de pronto, basta salvá-lo e utilizá-lo como log do commit.
:sav /tmp/commit $ svn commit -F /tmp/commit $ rm /tmp/commit
Uma outra maneira de se fazer isso é usando o Vim como editor default do SVN.
vim ~/.bashrc
Acrescente as seguintes linhas:
export SVN_EDITOR=/usr/bin/vim
Agora, ao usar `svn commit`, o vim irá ser aberto para você especificar o motivo.
Acho que é isso! Comentem =)
0sem comentários ainda