[Eugene V. Lyubimkin] > Reproducing: > > $ svn co https://only.mawhrin.net/repos/stuff fbreader --depth=immediates > > This command added only 'trunk', 'branches', 'tags' directories, but > have eaten at least several megabytes of network traffic.
This is a limitation of the network protocol. Quoting from /usr/share/doc/subversion/svn_1.5_releasenotes.html: | The new --depth feature naturally requires the client to be 1.5+, and | will work most efficiently if the server is also 1.5+. However, the | client will still behave correctly if the server is 1.4.x or lower; | things will just be less efficient. | | This is because older servers do not understand -- and therefore | ignore -- what the client tells them about "depth". So when a client | requests a depth shallower than depth-infinity, older servers will | send back more data than the client wants. However, a 1.5+ client | will know it's talking to an older server and filter out this extra | data. Thus, operations may take a while, because the server sends a | lot of data over the network that the client then ignores, but the | final result on the client side will be the same. (Note that older | servers understand a recurse flag in the network protocols, and 1.5+ | clients send that flag based on the depth; this alleviates some of | the extra network traffic penalty.) The following workaround exists. Note that -N is a flag that existed in previous versions of svn, and now is (mostly) a synonym for --depth=files: $ svn co -N https://only.mawhrin.net/repos/stuff fbreader $ cd fbreader $ svn up -N trunk tags branches (I note that when I tried the above, it did not check out branches, because of access control on the server - branches is protected against the anonymous user. It had already successfully gotten other stuff as the anonymous user, so it skipped asking for a username/password.) Hope this helps, -- Peter Samuelson | org-tld!p12n!peter | http://p12n.org/
signature.asc
Description: Digital signature