回答
「沒有使用svn的當前用戶」。每次提交SVN命令時,憑證都會在命令提示符下顯式提供,或者通過保存的憑證(可能包含多個用戶)隱式提供。
如果你運行'svn update',它顯然是作爲* some *用戶運行的。問題是如何知道那是什麼用戶。 – Kip 2017-07-11 16:38:55
如果您使用的是SVN + SSH,那麼給定工作站的用戶名在SVN的配置文件中。假設Windows工作站,該文件將位於C:\ Documents and Settings \\ Application Data \ Subversion文件夾中。然後你可以編寫一個腳本來獲得這個名字,並做你所需要的。
我認爲這隻適用於SVN + SSH設置。它無法在SVN的其他連接設置中工作。
謝謝,我已經找到了唯一的文件,這是一個: 1d711cc713195841ccd6ab5d28737ce9在 C:\ Documents和Settings \伊爾凡\應用數據\顛覆\權威性\ svn.simple \ ... 這對每個不同安裝但它可以做... – 2010-01-07 20:01:46
如果您在談論保存的憑據:要麼從日誌中推斷出來,要麼從提及的工作站/服務器提交一些東西,以便查看日誌所說的內容。
在Linux中,你會發現下面的文件在你的home目錄:
〜/的.subversion/auth /中svn.simple
在這個文件中,你可以看到「當前登錄用戶「。
是的。那裏有一個奇怪的命名文件:851320a14c12593c4c03577412869669。當用文本編輯器打開文件時,其中一個條目是:'用戶名 V 12 MartinBerger'可以看到誰在登錄。在這種情況下,我。 – 2014-01-10 13:38:23
可以使用下面的awk腳本從那裏提取用戶名: '/^K/{key = 1; VAL = 0; } /^ V/{key = 0; VAL = 1; } !如果(密鑰){kname = $ 1; } if(val && kname ==「username」){ print $ 1; val = 0; } }' 它放入svnuser.awk和運行這樣的: '貓〜/的.subversion/auth /中svn.simple/* | awk -f svnuser.awk' – 2014-01-22 15:03:00
非常感謝你... – VVB 2017-09-25 10:46:54
在Windows上,它位於
%APPDATA%\Subversion\auth\
爲了找到這個目錄,只要進入run
(雙贏的關鍵 + [R),粘貼上面的命令並打輸入或點擊Run
按鈕。
對我而言,文件夾svn.simple
中有一個文件。它是一個文本文件,它具有保存的認證數據信息。我有這樣的事情:
...
K 8
username
V 6
kosta
END
你不需要這個。用最新的SVN客戶端版本運行'svn auth'。 – bahrep 2017-06-21 14:00:05
grep username ~/.subversion/auth/svn.simple/* --after-context=2 | tail -1
說明:
的grep在
grep username ~/.subversion/auth/svn.simple/*
該文件將查找用戶名--after-context=2
將打印+2行遇到後用戶名
輸出:
username
V 6
Bhavik
- 要只打印用戶名
使用| tail -1
會給我我的用戶名即Bhavik
。
希望這解釋了代碼。
編輯:請注意,此答案僅適用於1.9之前的SVN版本。如果您在使用SVN版本> 1.9,然後嘗試中所描述的svn auth
方法@ bahrep的answer
這是一個bash腳本,我使用,我把我的〜/斌/文件夾,並呼籲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
有幾種方法找出存儲登錄憑據:
- 運行
svn auth
查看在SVN憑證存儲區(%APPDATA%\Subversion\auth
)中緩存的憑證和證書。 - 運行
cmdkey
查看存儲在Windows Credential Manager中的憑證。 - 如果您的SVN服務器與Active Directory集成並支持集成Windows身份驗證,則您的Windows登錄憑據將用於身份驗證,但它們不會被緩存。您可以運行
whoami
來查找您的用戶帳戶名稱。
順便說一句,千萬不要錯過Michael Hackner's answer:
有沒有這種東西 「也就是用svn當前用戶。」提交SVN命令時,每提供一個 時間,都將在命令提示符處明確提供憑證或者 ,或通過保存的 憑證(可能包含多個用戶)來隱式提供憑證。
- 1. 獲取用戶當前apprequests
- 2. 獲取當前用戶
- 3. JHipster獲取當前用戶
- 4. PHP,獲取當前用戶
- 5. 獲取當前用戶名
- 6. 獲取當前用戶名
- 7. SharePoint獲取當前用戶帳戶名?
- 8. 使用WMI獲取當前用戶名
- 9. 使用Spring @SubscribeMapping獲取當前用戶
- 10. 獲取當前用戶在FormsAuthentification
- 11. 在Model Serializer中獲取當前用戶
- 12. Facebook C#SDK獲取當前用戶
- 13. 獲取當前用戶名冒充
- 14. grails - 全局獲取當前用戶
- 15. SharePoint - 獲取當前用戶列表
- 16. 無法獲取當前用戶
- 17. 獲取用戶當前的經/緯度
- 18. 獲取Firebase當前用戶信息
- 19. 獲取用戶當前位置android
- 20. 獲取當前用戶的主目錄
- 21. pysvn:獲取當前登錄用戶名
- 22. 節點js JWT獲取當前用戶
- 23. 獲取當前用戶在Django admin
- 24. 在CloudKit中獲取當前用戶ID?
- 25. 獲取當前登錄用戶
- 26. 從BlobstoreUploadHandler獲取當前用戶
- 27. AEM - 獲取當前用戶Id
- 28. django獲取當前用戶ID
- 29. 獲取當前在線用戶?
- 30. 獲取當前用戶上下文
使用最新的SVN客戶端,您可以運行['svn auth'](https://stackoverflow.com/a/44678232/761095)。 – bahrep 2017-06-21 13:58:40