如何获取在特定工作站上使用svn的当前用户?
我可以使用带有某些开关的svn.exe可执行文件来获取该信息。
感谢。
答案 0 :(得分:24)
在Linux中,您将在主目录中找到以下文件:
〜/的.subversion / AUTH / svn.simple
在此文件中,您可以看到“当前登录的用户”。
答案 1 :(得分:9)
没有“使用svn的当前用户”这样的东西。每次提交SVN命令时,都会在命令提示符下显式提供凭据,或者通过保存的凭据(可能包括多个用户)隐式提供凭据。
答案 2 :(得分:8)
grep username ~/.subversion/auth/svn.simple/* --after-context=2 | tail -1
说明:
Grep grep username ~/.subversion/auth/svn.simple/*
中的文件会查找用户名
--after-context=2
在遇到用户名
输出:
username
V 6
Bhavik
| tail -1
会给我我的用户名,Bhavik
。 希望这能解释代码。
答案 3 :(得分:7)
在Windows中,它位于
中%APPDATA%\Subversion\auth\
要查找此目录,只需转到run
( win-key + r ),粘贴上面的命令并点击 enter 或点击Run
按钮。
对我来说,文件夹svn.simple
中有一个文件。它是一个文本文件,它包含已保存的身份验证数据的信息。我有这样的事情:
...
K 8
username
V 6
kosta
END
答案 4 :(得分:5)
有多种方法可以找到存储的登录凭据:
svn auth
以查看SVN凭据存储(%APPDATA%\Subversion\auth
)中缓存的凭据和证书。cmdkey
以查看存储在Windows凭据管理器中的凭据。whoami
来查找您的用户帐户名称。没有"当前用户正在使用svn。"一切 提交SVN命令的时间,也提供凭证 显式地在命令提示符下或隐式地通过保存 凭证,可能包括多个用户。
答案 5 :(得分:1)
如果您使用的是SVN + SSH,那么给定工作站的用户用户名就在SVN的配置文件中。假设Windows工作站,此文件将位于C:\ Documents and Settings \\ Application Data \ Subversion文件夹中。然后,您可以编写一个脚本来获取此名称,并执行您需要的任务。
我认为这仅适用于SVN + SSH设置。它不能用于SVN的其他连接设置。
答案 6 :(得分:0)
如果您正在谈论保存的凭据:要么从日志中推断出来,要么提交某些内容(来自上述工作站/服务器),以便您可以看到日志所说的内容。
答案 7 :(得分:0)
已经建议的 svn auth
对我有用,但要获得 “最终” 确认,您可以使用您修改并运行的文件
svn info MODIFIED/FILE
或
svn log MODIFIED/FILE
并查看最后更改的作者:XXXX,或列出用户名的更改历史记录。
答案 8 :(得分:-1)
编辑:请注意,此答案仅适用于1.9之前的SVN版本。如果您使用SVN版本> 1.9,请尝试@ bahrep的answer
中描述的svn auth
方法
这是我使用的bash脚本,我把它放在〜/ bin /文件夹中并调用svn_whoami.sh:
#!/bin/bash
debug=false
for ((i=1;i<=$#;i++)) do
case ${!i} in
-h|--help)
programName=$( basename ${0} )
echo "Usage:"
echo " ${programName} [-h|--help] [-d|--debug]"
echo
echo "Example:"
echo " ${programName} --debug"
exit 0;
;;
-d|--debug)
debug=true;
;;
esac;
done;
if [ "${debug}" == "true" ]; then
echo "cat ~/.subversion/auth/svn.simple/* | grep -A6 username --color";
fi;
cat ~/.subversion/auth/svn.simple/* | grep -A6 svn:realmstring
输出:
$ svn_whoami.sh -d
cat ~/.subversion/auth/svn.simple/* | grep -A6 username --color
svn:realmstring
V 53
<http://your.1st.url.name.here:80> Authorization Realm
K 8
username
V 5
yourUserName
--
svn:realmstring
V 45
<http://your.2nd.url.name.here:80> Authorization Realm
K 8
username
V 5
yourUserName