confusing example in the SVN book

C. Michael Pilato cmpilato at red-bean.com
Thu Sep 4 00:06:40 CDT 2008


r3290, but with usernames 'harry' and 'harryssh' to make the distinction
more obvious.  Thanks, Vincent!


Vincent Lefevre wrote:
> On 2008-08-25 11:22:24 -0500, Ben Collins-Sussman wrote:
>> Care to send a patch to the svnbook@ list?
> 
> Attached.
> 
>> On Mon, Aug 25, 2008 at 9:41 AM, Vincent Lefevre <vincent+svn at vinc17.org> wrote:
>>> In the current SVN book (nightly):
>>>
>>>  It's easy to use SSH in conjunction with svnserve. The client simply
>>>  uses the svn+ssh:// URL scheme to connect:
>>>
>>>  $ whoami
>>>  harry
>>>
>>>  $ svn list svn+ssh://host.example.com/repos/project
>>>  harry at host.example.com's password:  *****
>>>
>>>  foo
>>>  bar
>>>  baz
>>>>>>
>>>  In this example, the Subversion client is invoking a local ssh
>>>  process, connecting to host.example.com, authenticating as the user
>>>  harry, then spawning a private svnserve process on the remote
>>>  machine running as the user harry. The svnserve command is being
>>>  invoked in tunnel mode (-t), and its network protocol is being
>>>  "tunneled" over the encrypted connection by ssh, the tunnel agent.
>>>  svnserve is aware that it's running as the user harry, and if the
>>>  client performs a commit, the authenticated username will be used
>>>  as the author of the new revision.
>>>
>>> But the book doesn't say which "harry" (the client's or the server's)
>>> is taken into account as the author of the new revision; "authenticated
>>> username" suggests that it's the server's and this is also said a bit
>>> later in the book (though not all users may read that part), but this
>>> doesn't appear clearly in the example (and the word "aware" above may
>>> be confusing since it could mean that the client gave some information,
>>> which is not the case). You should probably give an example with two
>>> different user names on the client and on the server. This could be:
>>>
>>>  $ whoami
>>>  harryc
>>>
>>>  $ svn list svn+ssh://host.example.com/repos/project
>>>  harrys at host.example.com's password:  *****
>>>
>>>  foo
>>>  bar
>>>  baz
>>>>>>
>>>  In this example, the Subversion client is invoking a local ssh
>>>  process, connecting to host.example.com, authenticating as the user
>>>  harrys (according to SSH user configuration), then spawning a private
>>>  svnserve process on the remote machine running as the user harrys.
>>>  The svnserve command is being invoked in tunnel mode (-t), and its
>>>  network protocol is being "tunneled" over the encrypted connection
>>>  by ssh, the tunnel agent. If the client performs a commit, the
>>>  authenticated username harrys will be used as the author of the new
>>>  revision.
>>>
>>> This makes clear that the user name on the *server* side is taken
>>> into account as the author of the new revision.
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> svnbook-dev mailing list
> svnbook-dev at red-bean.com
> http://www.red-bean.com/mailman/listinfo/svnbook-dev


-- 
C. Michael Pilato <cmpilato at red-bean.com> | http://cmpilato.blogspot.com/

"The Christian ideal has not been tried and found wanting.  It has
 been found difficult; and left untried."  -- G. K. Chesterton




More information about the svnbook-dev mailing list