Aca me encuentro con mi amigo CVS, un poco outdated pero fiel amigo de deploys. CVS es un SCM muy popular y viejo de por si. Muchos han migrado a Subversion y nosotros andamos por ese camino tambien. Pero mientras tanto tenemos que lidiar con problemillas que diariamente se nos presentan.

En este articulo vamos a ver como importar codigo via linea de comando y un ANT task.

Es muy simple el codigo, veamos el siguiente escenario. Tengo un project en c:/myproject el cual quiero importar. En mi ant file voy a tener que declarar 4 variables project.name y project.path por un lado y cvs.root y cvs.password por otro.

Viendo el target cvsstuff encontramos 2 directivas , cvspass la cual nos conecta con el cvs y otra cvs que explicitamente hace el import. El codigo debajo.

<property name="cvs.root" value=":pserver:rodrigo@mycvs.com:/repo">
<property name="cvs.password" value="mypass">
<property name="project.name" value="myproject">
<property name="project.path" value="c:\myproject">

<target name="cvsstuff">
  <cvspass cvsroot="${cvs.root}" password="${cvs.password}" />
  <cvs cvsroot="${cvs.root}" dest="${project.path}" command="import -I ! -m start ${project.name} ${project.name} T${project.name}"/>
</target>