Je me demandais s'il existe un moyen de sauvegarder mon mot de passe Subversion lors des svn
opérations à partir de la console. La console est la seule option que j'ai. Lorsque j'essaye de faire une action Subversion, par exemple svn commit
, il me demande le mot de passe du compte à chaque fois. Existe-t-il un moyen d'enregistrer ce mot de passe d'une manière ou d'une autre pour ne pas avoir à le retaper à chaque fois?
106
Réponses:
Dans
~/.subversion/config
, vous avez probablementstore-passwords = no
. Changez-le enyes
(ou mettez-le simplement en commentaire car il est par défaut oui), et la prochaine fois que vous donnerez votre mot de passe à Subversion, il devrait l'enregistrer.Vous voudrez peut-être vous assurer que le propriétaire et les autorisations de
~/.subversion/config
sont corrects (pas d'accès public ou de groupe; 600).la source
Red Hat Linux 2.6.18
. une idée où cela pourrait être?/etc/subversion/config
système de fichiers fonctionne comme prévu. Mercistore-passwords
option dansconfig
est maintenant obsolète, selon certains commentaires par défaut que j'ai trouvés dans monconfig
fichier; elle a été remplacée par la même option dansservers
.)Cela dépend du protocole que vous utilisez. Si vous utilisez SVN + SSH, le client SVN ne peut pas enregistrer votre mot de passe car il ne le touche jamais - le client SSH vous le demande directement. Dans ce cas, vous pouvez utiliser une clé SSH et ssh-agent pour éviter les invites constantes. Si vous utilisez le protocole svnserve ou HTTP (S), le client SSH gère votre mot de passe et peut l'enregistrer.
la source
.ssh/config
, ajouter la clé publique au serveur SVN.Essayez d'effacer votre
.subversion
dossier dans votre répertoire personnel et essayez à nouveau de vous engager. Il devrait vous demander votre mot de passe, puis vous demander si vous souhaitez enregistrer le mot de passe.la source
J'ai dû éditer
~/.subversion/servers
. J'ai misstore-plaintext-passwords = yes
(n'était pas auparavant). Cela a fait l'affaire. Cela pourrait cependant être considéré comme peu sûr.la source
store-passwords = yes
. Je crois que c'était réglé avant, mais je ne l'ai pas été lorsque j'ai mis à jour SVN 1.7Veuillez noter le paragraphe suivant du
~/.subversion/servers
fichier:C'est au moins pour la version 1.6.12 de SVN. Gardez donc à l'esprit de modifier également le fichier des serveurs car il remplace
~/.subversion/config
.la source
Si vous utilisez svn + ssh , vous pouvez copier votre clé publique ssh sur la machine distante:
la source
Pour moi (utilisateur Mac), le problème était que le trousseau avait déjà une entrée stockée pour mes informations d'identification, mais les droits d'accès n'étaient pas corrects.
La suppression de l'entrée dans l'application porte-clés, puis sa recréation à l'aide de svn, a résolu le problème.
la source
Aucune de ces merveilleuses réponses n'a fonctionné pour moi sur une nouvelle installation d'Ubuntu. Au lieu de cela, un indice de cette réponse a fait l'affaire pour moi.
J'ai dû autoriser le stockage de mot de passe "simple" en définissant ce vide dans
~/.subversion/config
:Il n'y avait aucun paramètre existant, donc être vide est significatif.
C'était en plus de:
dans
~/.subversion/servers
.la source
L'utilisation du texte en clair n'est peut-être pas le meilleur choix, si le mot de passe est déjà utilisé comme autre chose.
Je soutiens la réponse acceptée, mais cela n'a pas fonctionné pour moi - pour une raison très spécifique: je voulais utiliser soit
kwallet
ou desgnome-keyring
magasins de mots de passe. J'ai essayé de changer les paramètres, sur les quatre fichiers:Même après que tout a été défini de la même manière, avec
password-stores
et le nom de KWallet (la valeur par défaut peut être erronée, non?) Cela ne fonctionnait pas et continuait à demander un mot de passe pour toujours. Les fichiers dans~/.subversion
avaient des autorisations 600.Eh bien, à ce stade, vous pouvez essayer de vérifier une chose simple:
Si vous obtenez:
alors vous pouvez soupçonner avec une grande probabilité que ce client a été construit à partir des sources, localement, par votre administrateur (qui peut être vous-même, comme dans mon cas).
Subversion est une méchante bête à compiler , très facile à construire accidentellement sans support HTTP, ou - comme dans mon exemple - sans support pour les magasins de mots de passe cryptés (vous avez besoin de fichiers de développement Gnome ou KDE, et beaucoup d'entre eux!). Mais le
./configure
script ne vous le dira pas et vous obtenez juste unesvn
commande moins fonctionnelle .Dans ce cas, vous pouvez revenir au client, fourni avec votre distribution, généralement au format
/usr/bin/svn
. L'inconvénient est que vous devrez probablement revérifier les copies de travail, car il n'y a pas desvn downgrade
commande. Vous pouvez consulter Linus Torvalds pour savoir quoi penser de Subversion, de toute façon;)la source
Pour ajouter à la réponse de Heath: Il semble que Subversion 1.6 ait désactivé le stockage des mots de passe par défaut s'il ne peut pas les stocker sous forme cryptée. Vous pouvez autoriser le stockage des mots de passe non chiffrés en définissant explicitement
password-stores =
(c'est-à-dire à la valeur vide) dans~/.subversion/config
.Pour vérifier quel magasin de mots de passe subversion utilise, regardez dans
~/.subversion/auth/svn.simple
. Celui-ci contient plusieurs fichiers, chacun une table de hachage avec un simple encodage clé / valeur. Lesvn:realmstring
dans chaque fichier identifie le domaine auquel ce fichier est destiné. Si le fichier apuis il stocke le mot de passe en texte brut quelque part dans ce fichier, dans une
K 8 password
entrée. Sinon, il essaie d'utiliser l'un des fichierspassword-stores
.la source
Toutes les méthodes mentionnées ici ne fonctionnent pas pour moi. J'ai construit Subversion à partir de la source et j'ai découvert que je dois exécuter configure avec
--enable-plaintext-password-storage
pour prendre en charge cette fonctionnalité.la source
Juste pour souligner ce que Tomasz Gandor et Domain ont dit à propos de la bonne version de svn et du fait qu'elle a été compilée pour permettre le stockage des mots de passe en texte brut, vous devez vérifier ce que vous avez:
Contre:
Une fois que vous voyez que votre version de svn a été activée pour le stockage des mots de passe en texte brut, appliquez toutes les autres réponses ici.
la source
J'utilise le client TortoiseSVN sous Windows, et pour moi, définir le paramètre store-passwords sur yes in
%USERPROFILE%\AppData\Roaming\Subversion\config
n'aide pas à stocker le mot de passe.Le mot de passe a été enregistré avec succès après la suppression de ce dossier (juste au cas où le changement de nom):
Environnement:
la source
Malheureusement, les réponses n'ont pas résolu le problème de la demande de mot de passe pour ssh + svn avec une clé privée protégée. Après quelques recherches, j'ai trouvé:
utilitaire si vous avez un ordinateur Linux. Assurez-vous que vos clés sont stockées
/home/username/.ssh/
et tapez cette commande sur le terminal.la source