Существует одна книга, в которой Вы нуждаетесь на своем столе: Компьютерные сети Tannenbaum 5-й Выпуск:
Это затронет широкий спектр сетевых тем, с проницательными схемами и самое главное, цитаты для дополнительных материалов для чтения. Это не ограничивает себя TCP/IP или "Интернетом", но покрывает широкий спектр возможных сетей, локальной, сотовой, специальной беспроводной связи, и т.д.
Это зависит несколько от Вашей версии SVN. Недавний (1.6 +) имеют обычное --non-interactive
(который Вы хотите использовать для предотвращения подсказок), и также a --trust-server-cert
это может сделать то, что Вы хотите.
Необходимо смочь загрузить сертификат и затем поместить его в соответствующий каталог. Или можно загрузить сертификат CA и затем установить ssl-авторитетные-файлы параметра конфигурации для доверия этому Приблизительно.
Посмотрите раздел управления сертификатом SSL в книге.
Использование - trust-server-cert
не приведет к постоянному принятию сертификата SSL. Вы можете навсегда принять сертификат SSL через командную строку, используя Перенаправление ввода и не используя - неинтерактивный
.
Вот пример для Unix / Linux:
svn list [TARGET] << EOF
p
EOF
ПРИМЕЧАНИЕ : Буква "p" выше означает (p) постоянно.
В моем решении используется expect. Это небезопасно, но будет работать, когда другие решения не будут.
#!/usr/bin/expect -f
set svn_username [lindex $argv 0]
set svn_password [lindex $argv 1]
set svn_url [lindex $argv 2]
spawn svn --username=${svn_username} --password=${svn_password} list ${svn_url}
expect "(R)eject, accept (t)emporarily or accept (p)ermanently? "
send -- "p\r"
expect "Store password unencrypted (yes/no)? "
send "no\r"
expect -re "root@.*:\/#"