Не перестраивайте колесо. Существует много междоменных пакетов SSO с открытым исходным кодом, таких как JOSSO, OpenSSO, CAS, Шибболет и другие. При использовании Microsoft Technology повсюду (IIS, AD), можно использовать федерацию Microsoft (ADFS) вместо этого.
(Edit) svnversion
не так хорош, потому что он относится к рабочей копии, а не к репозиторию.
svn info
также относится к рабочей копии. copy.
=> svnlook младший REPOS_PATH
должен это сделать. См. Также svn redbook.
function Get-SvnRevision($dir)
{
([xml](svn info $dir --xml)).info.entry.revision
}
svnversion - это нужная вам команда. Запустите svnversion --help
для объяснения вывода.
Вы также можете использовать svn info
, которое имеет то преимущество, что вам не нужно запускать его где-то внутри рабочей копии (или указывать путь к рабочей копии) - вы можете передать ему URL в репо и отображает различную информацию о репозитории, включая номер последней версии. svnversion
, напротив, покажет номер последней ревизии рабочей копии, но он не обязательно должен быть идентичным ревизии репозитория.
Кроме того, svn info
показывает больше деталей о репозитории, чем svnversion
. Это может быть за или против, в зависимости от вашего использования.