Steve,

This is useful.   I will keep an open mind.

Thank you,

Chris

From: Varnau, Steve (Neoview)
Sent: Monday, May 23, 2011 2:30 PM
To: Hahn, Christopher (SAN DIEGO); users@subversion.apache.org
Subject: RE: SVN question

svn does not always return success. For instance:

> svn ls
svn: '.' is not a working copy
> echo $?
1

I think this is the more normal mode that I script against.  I'm not sure why 
the update sub-command is so forgiving.

-Steve

From: Hahn, Christopher (SAN DIEGO)
Sent: Monday, May 23, 2011 1:54 PM
To: Varnau, Steve (Neoview); users@subversion.apache.org
Subject: RE: SVN question

Steve,

Thank you for taking the time.

I also saw this....I was wondering what users do to get something similar 
working.

The same thing happens under Perforce.  The command "p4" always returns a
successful exit code.  The way around that is the odd "-s" switch which causes 
the
tool to emit a string like "exit: #" where the underlying commands success or 
failure
was specified.  Is there perhaps some similar technique for SVN?

I checked the svn Global Options and did not see anything similar.

I suppose that I can just use a pipe and watch for strings that I expect.....

Take care,

Christopher

From: Varnau, Steve (Neoview)
Sent: Monday, May 23, 2011 1:33 PM
To: Hahn, Christopher (SAN DIEGO); users@subversion.apache.org
Subject: RE: SVN question

Christopher,

The problem is not with your perl code. Apparently, update returns success if 
you give it a path that does not exist in the current working directory.


Ø  svn update foobar

At revision 3158.

Ø  echo $?

0

For Svn 1.6.15, anyway. Seems to hold for linux & windows.

-Steve

From: Hahn, Christopher (SAN DIEGO)
Sent: Monday, May 23, 2011 11:34 AM
To: users@subversion.apache.org
Subject: SVN question

Hello,

I have been wondering how best to capture errors from
the SVN command line.

I wanted to show you how a basic test is failing.

Consider the simple code snippet:
==========================================
use strict;
my $options=" --username builduser --password XXXX";

chdir("C:\\source");
my $output = `svn update --depth=infinity mang $options`;

die "svn failed with errorcode $?" if $?;
print "We survived!\n";
==========================================

This command works if the "mang" above is changed to "main"
(which does exist at c:\source).

However, both code have this result:
==========================================
C:\source\cm\script>perl svntest.pl
We survived!

C:\source\cm\script>perl svntest.pl
We survived!
==========================================

What am I doing wrong?

Chris

________________________________

[cid:image001.png@01CC1956.37A19540]

Christopher Hahn
The Dude
Software Production Engineering
R&D Services, Hewlett-Packard
Phone: 858-655-4096
Cell: 619-630-9791
ch...@hp.com<mailto:christopher.h...@hp.com>

Visit our SPE Portal<http://teams5.sharepoint.hp.com/teams/SPE/default.aspx>

________________________________



<<inline: image001.png>>

Reply via email to