প্রম্পটটি এড়ানো এমন উপায়ে এসভিএন কমান্ডলাইনটি স্থায়ীভাবে কোনও এসএসএল শংসাপত্র গ্রহণের জন্য কোনও কমান্ড লাইন বিকল্প রয়েছে?
প্রম্পটটি এড়ানো এমন উপায়ে এসভিএন কমান্ডলাইনটি স্থায়ীভাবে কোনও এসএসএল শংসাপত্র গ্রহণের জন্য কোনও কমান্ড লাইন বিকল্প রয়েছে?
উত্তর:
এটি আপনার এসভিএন এর সংস্করণের উপর কিছুটা নির্ভর করে। সাম্প্রতিক (1.6+) এগুলির স্বাভাবিক --non-interactive
(যা আপনি প্রম্পটগুলি এড়াতে ব্যবহার করতে চান) থাকতে পারে এবং এটি --trust-server-cert
যা আপনি চান তা করতে পারে।
ব্যবহার --trust-server-cert
স্থায়ীভাবে এসএসএল শংসাপত্র গ্রহণ করবে না। আপনি ইনপুট পুনঃনির্দেশ ব্যবহার করে এবং ব্যবহার না করে স্থায়ীভাবে কমান্ড লাইনের মাধ্যমে এসএসএল শংসাপত্রটি গ্রহণ করতে পারবেন --non-interactive
।
ইউনিক্স / লিনাক্সের উদাহরণ এখানে:
svn list [TARGET] << EOF
p
EOF
দ্রষ্টব্য: উপরের "পি" নির্মমভাবে (পি) এর জন্য।
1.6.6 (r40053)
) দুর্ভাগ্যক্রমে কেবল p
(স্থায়ীভাবে) বিকল্পটি মোটেও অফার করবে না । এবং যেহেতু এটি একটি প্রাচীন বাক্সে রয়েছে যা আমি আর আপডেট করতে পারি না ...
আমার সমাধান আশা ব্যবহার করে। এটি সুরক্ষিত নয় তবে এটি কার্যকর হবে যখন অন্য সমাধানগুলি না করে।
#!/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@.*:\/#"
আপনার শংসাপত্রটি ডাউনলোড করতে সক্ষম হওয়া উচিত এবং তারপরে এটি উপযুক্ত ডিরেক্টরিতে রেখে দেওয়া উচিত। অথবা আপনি সিএ শংসাপত্রটি ডাউনলোড করতে পারেন এবং তারপরে সেই সিএ - তে বিশ্বাসের জন্য এসএসএল-অথরিটি-ফাইলগুলি কনফিগারেশন বিকল্পটি সেট করতে পারেন।
বইয়ের এসএসএল শংসাপত্র পরিচালনা বিভাগটি দেখুন ।