724 raise util.Abort(_('cannot commit svn externals')) |
724 raise util.Abort(_('cannot commit svn externals')) |
725 commitinfo, err = self._svncommand(['commit', '-m', text]) |
725 commitinfo, err = self._svncommand(['commit', '-m', text]) |
726 self._ui.status(commitinfo) |
726 self._ui.status(commitinfo) |
727 newrev = re.search('Committed revision ([0-9]+).', commitinfo) |
727 newrev = re.search('Committed revision ([0-9]+).', commitinfo) |
728 if not newrev: |
728 if not newrev: |
|
729 if not commitinfo.strip(): |
|
730 # Sometimes, our definition of "changed" differs from |
|
731 # svn one. For instance, svn ignores missing files |
|
732 # when committing. If there are only missing files, no |
|
733 # commit is made, no output and no error code. |
|
734 raise util.Abort(_('failed to commit svn changes')) |
729 raise util.Abort(commitinfo.splitlines()[-1]) |
735 raise util.Abort(commitinfo.splitlines()[-1]) |
730 newrev = newrev.groups()[0] |
736 newrev = newrev.groups()[0] |
731 self._ui.status(self._svncommand(['update', '-r', newrev])[0]) |
737 self._ui.status(self._svncommand(['update', '-r', newrev])[0]) |
732 return newrev |
738 return newrev |
733 |
739 |