Bug #1903
com.zfabrik.boot.svnaccess computes wrong base-line revision for branches
100%
Description
Assume http://z2-environment.net/svn/z2-environment/trunk is on revision 148 and http://z2-environment.net/svn/z2-environment/trunk/z2-samples.gateway is on revision 20.
Now trunk is branched into http://z2-environment.net/svn/z2-environment/branches/v2.3 in revision 149.
Now http://z2-environment.net/svn/z2-environment/branches/v2.3/z2-samples.gateway is still on revision 20 but it cannot be looked up with
> svn list http://z2-environment.net/svn/z2-environment/branches/v2.3/z2-samples.gateway@20
However this is what com.zfabrik.boot.svnaccess
does. It determines the revision of http://z2-environment.net/svn/z2-environment/branches/v2.3/z2-samples.gateway which 20 and
performs an svn list for this svn resource in revision 20 which does not exist in this branch, because the branch does not exist in revision 20.
So com.zfabrik.boot.svnaccess
must determine the base-line revision in which the branch was created:
1 ==================================================================================== PROPFIND /svn/gi-de-tt.main/lakka/branches/v2.3/extensions HTTP/1.1 Depth: 0 <?xml version="1.0" encoding="UTF-8"?> <propfind xmlns="DAV:"> <prop><version-controlled-configuration xmlns="DAV:"/> <resourcetype xmlns="DAV:"/> <baseline-relative-path xmlns="http://subversion.tigris.org/xmlns/dav/"/> <repository-uuid xmlns="http://subversion.tigris.org/xmlns/dav/"/> </prop> </propfind> === RESULT ===> <D:multistatus xmlns:D="DAV:" xmlns:ns1="http://subversion.tigris.org/xmlns/dav/" xmlns:ns0="DAV:"> <D:response xmlns:lp1="DAV:" xmlns:lp2="http://subversion.tigris.org/xmlns/dav/"> <D:href>/svn/gi-de-tt.main/lakka/branches/v2.3/extensions/</D:href> <D:propstat> <D:prop> <lp1:version-controlled-configuration> <D:href>/svn/gi-de-tt.main/!svn/vcc/default</D:href> </lp1:version-controlled-configuration> <lp1:resourcetype> <D:collection /> </lp1:resourcetype> <lp2:baseline-relative-path>lakka/branches/v2.3/extensions</lp2:baseline-relative-path> <lp2:repository-uuid>65b2e40f-0061-4c20-be6b-b6847574fef4</lp2:repository-uuid> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus> 2 ==================================================================================== PROPFIND /svn/gi-de-tt.main/!svn/vcc/default HTTP/1.1 Depth: 0 <?xml version="1.0" encoding="UTF-8"?> <propfind xmlns="DAV:"> <prop><checked-in xmlns="DAV:"/> </prop> </propfind> === RESULT ===> <D:multistatus xmlns:D="DAV:" xmlns:ns0="DAV:"> <D:response xmlns:lp1="DAV:" xmlns:lp2="http://subversion.tigris.org/xmlns/dav/"> <D:href>/svn/gi-de-tt.main/!svn/vcc/default</D:href> <D:propstat> <D:prop> <lp1:checked-in> <D:href>/svn/gi-de-tt.main/!svn/bln/1348</D:href> </lp1:checked-in> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus> 3 ==================================================================================== PROPFIND /svn/gi-de-tt.main/!svn/bln/1348 HTTP/1.1 Depth: 0 <?xml version="1.0" encoding="UTF-8"?> <propfind xmlns="DAV:"> <prop><baseline-collection xmlns="DAV:"/> <version-name xmlns="DAV:"/> </prop> </propfind> === RESULT ===> <D:multistatus xmlns:D="DAV:" xmlns:ns0="DAV:"> <D:response xmlns:lp1="DAV:" xmlns:lp2="http://subversion.tigris.org/xmlns/dav/"> <D:href>/svn/gi-de-tt.main/!svn/bln/1348</D:href> <D:propstat> <D:prop> <lp1:baseline-collection> <D:href>/svn/gi-de-tt.main/!svn/bc/1348/</D:href> </lp1:baseline-collection> <lp1:version-name>1348</lp1:version-name> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus>
Related issues
Updated by Udo Offermann over 9 years ago
- Related to Feature #1869: Allow alternative SVN client implementations for SVNCR added
Updated by Udo Offermann over 9 years ago
- % Done changed from 0 to 40
- Estimated time changed from 8.00 h to 16.00 h
Updated by Henning Blohm over 9 years ago
- Blocked by Improvement #1918: Replace SVNClientAdapter based implementation added
Updated by Henning Blohm over 9 years ago
- Status changed from In Progress to Resolved
- % Done changed from 60 to 100
Resolved via JavaHL, SVNKit usage.