环境:
Ubuntu 20.04 (服务器ssh远程登录,所以运行不了钱包之类的图形工具管理密码)
subversion 1.13
验证可行的步骤:
1. 删除原来的配置
rm ~/.subversion/ -rf
2. 执行一次svn命令输入密码后,会在目录~/.subversion/auth/svn.simple/ 创建文件名类似的文件6d88dc943a0b554aab3c3119980f8abe 的文件
svn up
2. 修改目录 ~/.subversion/auth/svn.simple/ 的文件,内容如下,passtype固定是simple, K和V后面的数字分别代表key和value的长度(注意svn服务器地址修改)
$ cat ~/.subversion/auth/svn.simple/6d88dc943a0b554aab3c3119980f8abe
K 15
svn:realmstring
V 25
<svn://192.168.168.1:3690>K 8
passtype
V 6
simple
K 8
username
V 4
peng
K 8
password
V 6
123456
END
(注意:不要在交互命令输入密码,不然会被覆盖掉,其他~/.subversion/servers和config文件的配置不需要配置,用默认创建的就行 )
3. 重新svn up确认一下,就发现不需要再输入密码了
$ svn up
Updating '.':
At revision 95848.
其他尝试
- 看网上其他文章说svn新的版本,以及新的linux系统不允许明文保存密码到本地磁盘,就想着重新编译旧的版本svn 1.10,但是考虑到依赖库的版本冲突问题,就放弃了
- 如果是依赖库的问题,就想到docker,结果还真有,不过因为要root权限使用svn,不适合我,也放弃了Docker Hub
https://hub.docker.com/r/nbrun/svn-client
- 最后,无意间看到以下文章试了一下,结果发现可以了,并且我重新删除了配置,确认了几次,只要按我上面的步骤做就可以了,无需修改servers和config的配置Can't make SVN store passwords, even though the configuration is set to allow it - Stack Overflow
https://stackoverflow.com/questions/2599281/cant-make-svn-store-passwords-even-though-the-configuration-is-set-to-allow-it
明明不是很复杂的问题,但是却花费了很多时间,记录一下免得再次踩坑,希望也能帮到其他人,(* ̄︶ ̄)