Dúvida Ant + SVN

4 respostas
carolino

Iai Pessoal…
To quebrando a cabeça e ta osso…
Já pesquisei na net e não ficou claro pra mim

Preciso fazer um script no ANT que…

-conecte ao SVN
-comite alguns arquivos
-gere um relatório das alterações

Tava tentando fazer isso com o svnant mas num tive muito sucesso

Alguem poderia me ajudar ou me dar alguma dica… to meio perdido :frowning:

4 Respostas

carolino

To caminhando no meu build hehe

Já consegui conectar e comitar algumas classes…

O proxímo passo é configurar o build para fazer um merge
e comitar apenas o que foi modificado…

Sugestões são bem vindas rs

<target name="release" depends="imprimirValores">
		
		<!-- adiciona arquivos para serem comitados -->
		<echo>Adicionando alterações do projeto</echo>
		<exec executable="svn" dir="/home/usuario/dev/ews/ProjetoTesteBuild/" failonerror="true">
			<arg line="add src/br/com/arquivoscomitados/" />
		</exec>
		<!-- comita no svn-->
		<echo>Comitando as alterações no projeto</echo>
		<exec executable="svn" dir="/home/usuario/dev/ews/ProjetoTesteBuild/" failonerror="true">
			
			<arg line="commit -m 'Alteração para teste' --username 'User' --password Senha'" />
		</exec>
	</target>
carolino

Mais um passo…
Descobri que para comitar as modificações automaticamente…
Deve-se ir em cada diretório do projeto e fazer o commit…

Esse trabalho gera muitos blocos… já que eu vou ter que dizer pro build cada diretório que irá ter que verificar as modificações e comitar…

O proximo passo é tentar fazer ele procurar todas as modificações recursivamente…

Vamos la… ta quase hehe

fabiofalci

Não é melhor fazer isso em código? Ou num script?
‘Progamar’ em xml, no ant, é dureza.

Depois basta chamar o código a partir do ant.

Andre_Fonseca

carolino:
Iai Pessoal…
To quebrando a cabeça e ta osso…
Já pesquisei na net e não ficou claro pra mim

Preciso fazer um script no ANT que…

-conecte ao SVN
-comite alguns arquivos
-gere um relatório das alterações

Tava tentando fazer isso com o svnant mas num tive muito sucesso

Alguem poderia me ajudar ou me dar alguma dica… to meio perdido :frowning:

oi,

Dá para fazer isso sim, utilize um tal de SVNKit

Dê uma lida no blog

Para se conectar ficaria algo assim

<target name="svn-update">
		<echo message="Realizando update com o svn" />
		<java classname="org.tmatesoft.svn.cli.SVN" dir="${working.copy}" fork="true">
			<arg value="update" />
			<arg value="--username" />
			<arg value="${svn.user}" />
			<arg value="--password" />
			<arg value="${svn.password}" />
			<classpath refid="master.classpath" />
		</java>
	</target>

	<target name="svn-commit">
		<echo message="Realizando commit com o svn" />
		<java classname="org.tmatesoft.svn.cli.SVN" dir="${working.copy}" fork="true">
			<arg value="commit" />
			<arg value="--username" />
			<arg value="${svn.user}" />
			<arg value="--password" />
			<arg value="${svn.password}" />
			<arg value="-m" />
			<arg value="Testing" />
			<classpath refid="master.classpath" />
		</java>
	</target>

Para gerar os relatórios (e rodar o JUnit)

<target name="test" depends="build, build-test"> <echo message="Rodando testes do JUnit" /> <junit showoutput="yes" printsummary="yes"> <formatter type="xml" /> <classpath refid="master.classpath" /> <test name="foo.bar.TestCalculadora" /> </junit> <echo message="Gerando relatorios de teste" /> <junitreport todir="${junit.reports}"> <fileset dir="${junit.reports}"> <include name="**/*" /> </fileset> <report format="frames" todir="${junit.reports}" /> </junitreport> </target>

Criado 24 de maio de 2011
Ultima resposta 27 de mai. de 2011
Respostas 4
Participantes 3