Quando você efectuar um dado conjunto de alterações à sua cópia de trabalho e quiser que os outros programadores tenham acesso a elas, você poderá enviá-las e 'confirmá-las', fazendo o commit. Com esse commit, você coloca as suas versões dos ficheiros modificados como versões novas no repositório. Uma actualização subsequente por outro programador irá trazer as suas modificações para a cópia de trabalho dele.
Para enviar um conjunto de ficheiros, seleccione-os na janela principal do Cervisia e escolha a opção → ou seleccione-os com o botão direito do rato e escolhendo a opção do menu de contexto.
Você irá obter uma janela que lhe mostra uma lista dos ficheiros seleccionados e uma mensagem de registo para as suas alterações em baixo. O Cervisia ajuda-o de várias formas a arranjar uma mensagem de registo significativa: Primeiro, na lista de ficheiros, você poderá fazer duplo-click num ficheiro ou carregar em Return para poder ver as alterações que você fez ao ficheiro. Segundo, dá-lhe uma lista das mensagens de registo que você usou anteriormente numa lista. Terceiro, esta janela está integrada com o editor do ChangeLog do Cervisia. Quando tiver terminado esta janela, o comando
cvs commit -m mensagem
nomes dos ficheiros
é utilizado.
Nota
Um erro comum que você poderá encontrar ao enviar as actualizações é o Up-to-date check failed (a verificação da actualização falhou). Isto significa que alguém fez alterações no repositório sem que você tenha actualizado a sua área de trabalho. Ou, mais tecnicamente, a sua versão da BASE
não é a mais recente na sua ramificação respectiva. Nesse caso, o CVS recusa-se a reunir as suas modificações no repositório. A solução passa por actualizar, resolver os conflitos e envar de novo. Claro, se você estiver a trabalhar num projecto de 'software', é normalmente uma boa técnica verificar se o programa ainda continua a funcionar depois de você ter feito a alteração - em resumo, poderá acontecer que hajam interacções erradas entre as suas modificações e as que foram efectuadas pelas outras pessoas, o que poderá dar origem a erros no código.
Nota
Outro erro normal resulta na mensagem de erro Sticky tag 'X' for file 'X' is not a branch (A marca fixa 'X' do ficheiro não é uma ramificação). Isto acontece quando você tenta fazer 'commit' de um ficheiro que você extraiu anteriormente para uma dada versão fixa ou uma marca ('tag') fixa com o comando
%
cvs update -r X
(que é isto é usada pelo item do menu → ). Nesse caso, a marca do ficheiro fica fixa, isto é as actualizações posteriores não lhe trazem a versão mais recente da ramificação ('branch'). Se você quiser enviar versões posteriores para essa ramificação, você terá de actualizar para o nome da marca antes de poder fazer novos 'commits'.
Com o Cervisia, é bastante simples manter um ficheiro de ChangeLog que esteja em conformidade com o formato definido pelas sugestões de codificação da GNU. Para o usar, escolha a opção → . Se existir um ficheiro com o nome ChangeLog
na pasta de topo da sua área local, este ficheiro será carregado e você terá a hipótese de o editar. Para tal, no topo do ficheiro, é introduzido um item com a data actual e o nome do seu utilizador (o qual poderá ser configurado tal como é descrito em “Geral”). Quando você fechar esta janela ao carregar em , a próxima janela de envio das alterações que você abrir terá a mensagem de registo igual à mensagem que você introduziu no registo de alterações.