Controle de versão usando RCS, CVS ou similares

Se você usar RCS, CVS, Subversion, Bazaar ou Git para manter controle de versão de seus documentos (La)TeX , você pode precisar de algum mecanismo para incluir as informações de versão em seu documento, de forma que elas possam ser tipografadas (em vez de apenas ocultá-las dentro de um comentário).

A solução mais completa para RCS e CVS é usar o pacote (LaTeX) rcs, que permite analisar e exibir o conteúdo dos campos do RCS de uma maneira extremamente flexível. O pacote rcsinfo é mais simples, mas faz a maior parte do que você quer, e algumas pessoas o preferem; ele é explicitamente compatível com LaTeX2HTML.

Se, no entanto, você precisar de uma solução que funcione sem usar pacotes externos, ou uma que funcione no Plain TeX, então você pode usar a seguinte solução mínima:

\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}}
\RCS$Revision: 1.47 $ % or any RCS keyword
\RCS$Date: 2014/01/28 18:17:23 $
...
\date{Revision \RCSRevision, \RCSDate}

Se você for usuário de Subversion, o pacote svn deve ser o ideal para você. Ele tem inteligência explícita para lidar com datas:

\documentclass{‹foo›}
...
\usepackage{svn}
\SVNdate $Date$
\author{...}
\title{...}
...
\begin{document}
\maketitle
...
\end{document}
vai (desde que o subversion tenha submetido uma cópia do documento) fazer com que o \maketitle use a data que foi escrita no campo $Date$.

Uma alternativa para usuários do Subversion é o pacote svninfo, que tem quase o mesmo mecanismo do svn , mas com um foco bem diferente. O Svninfo faz com a data o mesmo truque que o svn (controlado por uma opção de pacote), e pode definir rodapé de página usando o pacote fancyhdr. Não há muito o que escolher entre os dois pacotes: você deve ler a documentação dos pacotes para ver qual é o mais adequado para você.

Uma abordagem alternativa baseada em script para controle de versão foi usada pelo pacote vc, que, em certas situações, poderia funcionar de forma mais confiável do que qualquer um dos pacotes mencionados acima. O pacote vc oferece suporte ao uso do Bazaar, Git e Subversion, e funciona tanto com o LaTeX quanto com o Plain TeX. Observe que o vc é a única opção que atualmente afirma oferecer suporte a repositórios controlados pelo Bazaar.

Finalmente, por enquanto, o pacote gitinfo oferece suporte para documentos controlados pelo Git.

gitinfo.sty
gitinfo
rcs.sty
rcs
rcsinfo.sty
rcsinfo
svn.sty
svn
svninfo.sty
svninfo
vc
vc

This answer last edited: 2011-08-31


Do you have any question? Ask on: latex.net.br - we love qood questions!