[02:48] [root @ serveur: ~] ps ax | grep svn 23986? SS 0:00 / usr / bin / svnserve -d -r / srv / svn Comme vous le voyez dans les arguments, mon répertoire racine svn est / srv / svn.
Maintenant, un peu de magie de la machine distante ...
Cela marche:
> svn co svn://[email protected]/test-repo
Mais ce n'est pas:
> svn co svn+ssh://svn-user@<putty-session-name>/test-repo
'No repository found in 'svn+ssh://svn-user@<putty-session-name>/test-repo'
En jouant pendant quelques heures, j'ai trouvé qu'en apparence, si j'utilise ssh tunnel, je peux obtenir mon dépôt en utilisant ce qui suit:
> svn co svn+ssh://svn-user@<putty-session-name>/srv/svn/test-repo
... ce qui signifie que je devrais spécifier le chemin physique complet vers le dépôt. Hein?
C'est parce que svn sur SSH (
svn+ssh://
) accède simplement à un référentiel de subversion "localement", en utilisant SSH comme transport, et donc vous avez accès à l'ensemble du système de fichiers. Svnserve, en revanche, est dit "commencez vos chemins avec/srv/svn
, et vous n'avez donc pas à le spécifier manuellement.la source
Vous pouvez éditer la commande ssh login pour les utilisateurs utilisant svn + ssh, en éditant les ~ / .ssh / authorized_keys de l'utilisateur subversion. La ligne pour un utilisateur ressemble à ceci:
Il y a plus d'astuces svn + ssh dans le livre svn
la source
cela ressemble plus à une question en soi, mais elle est vraiment liée à celle-ci.
après avoir configuré svn + ssh avec des clés privées / publiques, je ne peux pas accéder à mon référentiel en utilisant des chemins relatifs de cette manière:
puisque je reçois cette erreur:
mais seulement comme ça:
Ceci est le fichier authorized_keys2 que j'ai dans le répertoire /home/svn/.ssh
et le fichier svnserve.bin suggéré par Andrejs à la réponse précédente
J'ai même pensé aux problèmes d'autorisation, qui sont répertoriés ici:
Je ne peux vraiment pas trouver de solution ...
la source