दिलचस्प पोस्ट
कॉलम में सामान्य मान के आधार पर डेटा फ्रेम की एक सूची में एक बड़ा डेटाफ्रेम विभाजित करें एंड्रॉइड स्टूडियो गड़बड़ी को स्थापित करने में त्रुटि स्कैनर डबल वैल्यू – इनपुट मेस्मेस्ट अपेशन सी ++ में खाली वर्ग का आकार शून्य क्यों नहीं है? कैसे सी # का उपयोग कर Excel करने के लिए एक JQgrid डेटा निर्यात करने के लिए? एक व्यवस्थापक के रूप में एफबी डीबी को REST अनुरोध करने के लिए कस्टम टोकन का उपयोग करना मैं अपने नेटबींस परियोजना पर बाहरी जार कैसे शामिल कर सकता हूं? स्थानीय .aar फ़ाइलों को "फ्लैटडिआईर्स" का उपयोग करके ग्रैडल बिल्डिंग में जोड़ना काम नहीं कर रहा है स्थानीय विकास में फेसबुक का विकास मैं एक WinForms ऐप कैसे पूर्ण स्क्रीन पर जा सकता हूं एसक्यूएल सर्वर varchar स्तंभ से अजीब अक्षर (टोपी के साथ) निकालें हैशसेट बनाम सूची प्रदर्शन क्यों तारीख। गलत गलत परिणाम देते हैं? वर्णों की गतिशील राशि पर आधारित फ़ॉन्ट-आकार के उत्तरदायी बनाने के लिए शुद्ध सीएसएस ! फ़ंक्शन () {} () बनाम (फ़ंक्शन () {}) ()

एक बार प्रवेश करने के लिए SSH पर गिट को कॉन्फ़िगर करना

मैंने अपने जीआईटी भंडार को एसएसएच पर क्लोन किया है I इसलिए, हर बार जब मैं मूल मास्टर के साथ दबाव या खींच कर संवाद करता हूं, तो मुझे अपना पासवर्ड फिर से दर्ज करना होगा। मैं कैसे git को कॉन्फ़िगर कर सकता हूं ताकि मुझे कई बार अपना पासवर्ड दर्ज करने की आवश्यकता न हो?

वेब के समाधान से एकत्रित समाधान "एक बार प्रवेश करने के लिए SSH पर गिट को कॉन्फ़िगर करना"

ssh-add आज़माएं, आपको चलाने के लिए और अपनी निजी कुंजी रखने के लिए ssh-agent आवश्यकता है

(ठीक है, अद्यतित प्रश्न का उत्तर देने के लिए, आप जेफोमी के रूप में सार्वजनिक और निजी कुंजी बनाने के लिए पहले ssh-keygen चलाते हैं.तुमने सर्वर पर सार्वजनिक कुंजी डाल दी.आपको पासफ़्रेज़ का उपयोग करना चाहिए, अगर आपके पास समतुल्य नहीं है अपनी निजी कुंजी में एक सादा-पाठ पासवर्ड का। लेकिन जब आप करते हैं, तो आपको नीचे बताए अनुसार व्यावहारिक मामले के रूप में ssh-agent की आवश्यकता है।)

आप लॉग ssh-agent इन करते समय पृष्ठभूमि में ssh-agent चलाना चाहते हैं। एक बार जब आप लॉग इन करते हैं, तो यह विचार ssh-add एक बार और केवल एक बार ही चलाने के लिए है, ताकि एजेंट को अपना पासफ्रेज दे, अपनी कुंजी को डिकोड कर सकें। एजेंट तो बस आपकी कुंजी के साथ स्मृति में बैठता है, खुला और भरी हुई है, हर बार जब आप एसएसबी कहीं भी उपयोग करने के लिए तैयार होते हैं

सभी एसएसएच-परिवार के आदेश 1 तब एजेंट से परामर्श लेंगे और स्वचालित रूप से आपकी निजी कुंजी का उपयोग करने में सक्षम होंगे।

OSX पर (त्रुटि, मैकोज़ ), गनोम और केडीई सिस्टम, ssh-agent आमतौर पर आपके लिए स्वचालित रूप से लॉन्च किया जाता है अगर मैं आपके विवरण के बारे में विस्तार से जानकारी दूंगा, तो आपके पास साइगविन या अन्य विंडो पर्यावरण भी होंगे, जहां यह आपके लिए निश्चित रूप से नहीं किया गया है।

यहां शुरू करें: man ssh-agent

एजेंट को स्वचालित रूप से चलाने के कई तरीके हैं जैसा कि मैन पेज बताता है, आप इसे चला सकते हैं ताकि यह आपके सभी लॉग इन सत्र के अन्य प्रक्रियाओं के माता-पिता हो। इस तरह, यह उपलब्ध परिवेश चर स्वचालित रूप से आपके सभी गोले में होगा। जब आप (बाद में) ssh-add या ssh करते हैं, तो दोनों को एजेंट की पहुंच होगी क्योंकि वे सभी में जादू की सॉकेट पथ नामों के साथ या जो भी हो,

वैकल्पिक रूप से, आप एजेंट को सामान्य बच्चे के रूप में चला सकते हैं, एक फ़ाइल में पर्यावरण सेटिंग्स को सहेज सकते हैं, और स्रोत जो प्रत्येक शेल में शुरू होता है जब यह शुरू होता है।

मेरे OSX और Ubuntu सिस्टम स्वचालित रूप से एजेंट लॉन्च सेटअप करते हैं, इसलिए मुझे बस एक बार ssh-addssh-add चलाने का प्रयास करें और देखें कि यह काम करता है, यदि ऐसा है, तो आपको केवल एक बार प्रति रिबूट करना होगा।

मेरा साइगविन प्रणाली मैन्युअल रूप से इसकी आवश्यकता होती है, इसलिए मैंने यह मेरे .profile और मेरे पास .bashrc स्रोत .profile :

 . .agent > /dev/null ps -p $SSH_AGENT_PID | grep ssh-agent > /dev/null || { ssh-agent > .agent . .agent > /dev/null } 

.agent फ़ाइल स्क्रिप्ट द्वारा स्वचालित रूप से बनाई जाती है; इसमें पर्यावरण चर की परिभाषाएं और निर्यात शामिल हैं उपर्युक्त .igent फ़ाइल को स्रोत की कोशिश करता है, और फिर ps(1) एजेंट की कोशिश करता है यदि यह काम नहीं करता है तो यह एक एजेंट शुरू करता है और एक नई एजेंट फ़ाइल बनाता है। आप बस ssh-add चला ssh-add और अगर यह एक एजेंट शुरू करने में विफल रहता है


1. और यहां तक ​​कि स्थानीय और दूरस्थ sudo सही पैमा के विस्तार के साथ।

GitHub के साथ एक ऐसी ही समस्या थी ऐसा इसलिए हो रहा था क्योंकि मैं HTTPS प्रोटोकॉल का उपयोग कर रहा था यह जांचने के लिए कि आपके द्वारा उपयोग किए जा रहे प्रोटोकॉल को अभी चलाएं

 git config -l 

और 'remote.origin.url' से शुरू होने वाली रेखा को देखें अपने प्रोटोकॉल को स्विच करने के लिए

 git config remote.origin.url git@github.com:your_username/your_project.git 

मुझे उम्मीद है यह मदद करेगा।

यह एसएसटी विन्यस्त करने के बारे में है, जीआईटी नहीं। यदि आपके पास पहले से नहीं है, तो आपको एक कुंजी जोड़ी बनाने के लिए ssh-keygen (रिक्त पासफ़्रेज के साथ) का उपयोग करना चाहिए। उसके बाद, आप सार्वजनिक कुंजी को ssh-copy-id साथ दूरस्थ गंतव्य में ssh-copy-id । जब तक आपको एकाधिक चाबियाँ (उदाहरण के लिए अन्य उद्देश्यों के लिए पासफ़्रेज के साथ एक अधिक सुरक्षित) की आवश्यकता हो, या आपके पास कुछ बहुत ही अजीब एकाधिक-पहचान वाले सामान हैं, यह आसान है:

 ssh-keygen # enter a few times to accept defaults ssh-copy-id -i ~/.ssh/id_rsa user@host 

संपादित करें: आपको वास्तव में केवल DigitalRoss का उत्तर पढ़ा जाना चाहिए, लेकिन: यदि आप पासफ़्रेज़ के साथ कुंजी का उपयोग करते हैं, तो आपको ssh-add <key-file> करने के लिए उन्हें ssh-agent (और जाहिर है एक ssh-agent शुरू करने के लिए) की आवश्यकता होगी आपका वितरण पहले से ही आपके लिए नहीं चल रहा है)।

सुनिश्चित करें कि जब आप रिपॉजिटरी को क्लोन करते हैं, तो आपने एसएसएच यूआरएल के साथ ऐसा किया और HTTPS नहीं; रेपो के क्लोन यूआरएल बॉक्स में, यूआरएल कॉपी करने से पहले एसएसएच प्रोटोकॉल चुनें। नीचे चित्र देखें:

यहां छवि विवरण दर्ज करें

जिन लोगों को जीआईटी-बीश या टर्मिनल में चलने वाले कमांड पर सीधे फाइलें संपादित करना पसंद करते हैं, उनके लिए मूइन के विचारों को विस्तारित करना

अपने प्रोजेक्ट की गिट डायरेक्टरी (अपने स्थानीय मशीन पर प्रोजेक्ट रूट) पर जाएं और 'कॉन्फ़िग' फ़ाइल खोलें। फिर [रिमोट "मूल"] की तलाश करें और यूआरएल कॉन्फ़िग को निम्नानुसार सेट करें:

 [remote "origin"] #the address part will be different depending upon the service you're using github, bitbucket, unfuddle etc. url = git@github.com:<username>/<projectname>.git 

मुझे लगता है कि यहां दो अलग चीजें हैं पहला यह है कि सामान्य एसएसएच प्रमाणन के लिए उपयोगकर्ता को खाता का पासवर्ड (जहां एसएसडीडी कॉन्फ़िगरेशन के आधार पर, अलग-अलग तरीकों से खाता पासवर्ड प्रमाणित किया जाएगा) की आवश्यकता होती है।

आप उस पासवर्ड को प्रमाणपत्र का उपयोग करने से बच सकते हैं। प्रमाण पत्र के साथ आपको अभी भी एक पासवर्ड रखना होगा, लेकिन इस बार आपकी निजी कुंजी का पासवर्ड है (जो कि खाते के पासवर्ड से स्वतंत्र है)।

ऐसा करने के लिए आप steveth45 द्वारा निर्देशित निर्देशों का पालन कर सकते हैं:

सार्वजनिक कुंजी प्रमाणीकरण के साथ

यदि आप हर बार प्रमाण पत्र का पासवर्ड डालने से बचने के लिए चाहते हैं तो आप डिजिटल रॉस द्वारा बताए गए अनुसार एसएसएच एजेंट का उपयोग कर सकते हैं

यह सही तरीके से आप यूनिक्स बनाम विन्डोज पर निर्भर करते हैं, लेकिन मूल रूप से आपको प्रवेश में पृष्ठभूमि में ssh-agent को चलाने की आवश्यकता होती है, और जब आप पहली बार प्रवेश करते हैं, तो एजेंट को अपना पासफ़्रेज़ देने के लिए चलाएं। सभी एसएसएच-परिवार के आदेश तब एजेंट से परामर्श लेंगे और अपने पासफ़्रेज को स्वचालित रूप से उठाएंगे।

यहां शुरू करें: man ssh-agent

एसएसएच एजेंट की एकमात्र समस्या यह है कि कम से कम * न्यूनतम पर, आपको प्रत्येक नया खोल पर प्रमाण पत्र का पासवर्ड देना होगा। और फिर प्रमाणपत्र "लोड" किया गया है और आप किसी भी पासवर्ड को बिना बिना एसएसआई सर्वर के प्रमाणन के लिए इसका उपयोग कर सकते हैं। लेकिन यह उस विशेष शेल पर है

चाबी का गुच्छा के साथ आप एक ही चीज़ को एसएसएच एजेंट के रूप में कर सकते हैं लेकिन "सिस्टम-वाइड" एक बार जब आप अपने कंप्यूटर को चालू करते हैं, तो आप एक खोल खोलते हैं और प्रमाणपत्र का पासवर्ड डालते हैं। और फिर, हर दूसरे शेल "लोडेड" प्रमाणपत्र का उपयोग करेगा और आपका पासवर्ड कभी भी फिर से नहीं पूछा जाएगा जब तक कि आप अपने पीसी को पुनरारंभ नहीं करते हैं

गनोम के समान आवेदन है, जिसे जीनोम कीरिंग कहते हैं, जो आपके प्रमाणपत्र का पासवर्ड पहली बार उपयोग करते हैं और फिर इसे सुरक्षित रूप से संग्रहीत करते हैं ताकि आपको फिर से नहीं पूछा जाएगा।

यदि आप गिटौब का उपयोग कर रहे हैं, तो उनके पास एक बहुत अच्छा ट्यूटोरियल है जो इसे स्पष्ट रूप से बताता है (कम से कम मेरे लिए)।

http://help.github.com/set-up-git-redirect/

 ssh-keygen -t rsa 

जब एक पासफ़्रेज़ के लिए पूछा जाए, तो इसे खाली छोड़ दें, बस एन्टर दबाएं। इतना सरल है!!

उस बॉक्स से कोशिश करें जिससे आप आगे बढ़ रहे हैं

  ssh git@github.com 

आपको तब जिथूब से एक स्वागत योग्य प्रतिक्रिया मिलनी चाहिए और फिर ठीक करना होगा।

मैं हमेशा पासफ़्रेज़ टाइपिंग से बचने का प्रयास कर रहा हूं क्योंकि मैं खिड़कियों पर एसएसएच का उपयोग कर रहा हूं। मैंने अपनी .profile फ़ाइल को संशोधित करने के लिए क्या किया, ताकि मैं एक विशेष सत्र में अपना पासफ़्रेज़ एक डालूंगा। तो यह कोड का टुकड़ा है:

  SSH_ENV="$HOME/.ssh/environment" # start the ssh-agent function start_agent { echo "Initializing new SSH agent..." # spawn ssh-agent ssh-agent | sed 's/^echo/#echo/' > "$SSH_ENV" echo succeeded chmod 600 "$SSH_ENV" . "$SSH_ENV" > /dev/null ssh-add } # test for identities function test_identities { # test whether standard identities have been added to the agent already ssh-add -l | grep "The agent has no identities" > /dev/null if [ $? -eq 0 ]; then ssh-add # $SSH_AUTH_SOCK broken so we start a new proper agent if [ $? -eq 2 ];then start_agent fi fi } # check for running ssh-agent with proper $SSH_AGENT_PID if [ -n "$SSH_AGENT_PID" ]; then ps -fU$USER | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null if [ $? -eq 0 ]; then test_identities fi # if $SSH_AGENT_PID is not properly set, we might be able to load one from # $SSH_ENV else if [ -f "$SSH_ENV" ]; then . "$SSH_ENV" > /dev/null fi ps -fU$USER | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null if [ $? -eq 0 ]; then test_identities else start_agent fi fi 

इसलिए इसके साथ मैं सत्र में एक बार अपना पासफ़्रेज़ टाइप करता हूं ..

AddKeysToAgent yes / config फ़ाइल के शीर्ष पर एक एकल पंक्ति AddKeysToAgent yes जोड़ें। बिल्कुल एसएसएच एजेंट पहले से चलना चाहिए। यदि यह नहीं चल रहा है ( prep ssh-agent द्वारा जांच), तो बस इसे eval $(ssh-agent)

अब, कुंजी को प्रणालीभर में स्मृति में लोड किया जाता है और आपको पासफ़्रेज़ में दोबारा लिखना नहीं पड़ता है

समाधान का स्रोत https://askubuntu.com/questions/362280/enter-ssh-passphrase-once/853578#853578 है

मुझे एक ऐसे सर्वर से जीआईटी रेपो क्लोन करना पड़ा, जिसने वीी एसएसबी कुंजी को लॉग इन करने की अनुमति नहीं दी थी लेकिन केवल उपयोगकर्ता / पासवर्ड के साथ। मुझे एक साधारण उपयोगकर्ता / पासवर्ड संयोजन का उपयोग करने के लिए Git प्लगइन को कॉन्फ़िगर करने का कोई तरीका नहीं मिला, इसलिए मैंने लिनक्स बिल्ड मशीन पर पूर्व-बिल्ड चरण के रूप में निम्नलिखित शेल कमांड जोड़ा है जो उपकरण की उम्मीद पर निर्भर करता है (apt-get install expect):

यह इस समस्या को सुलझाने का एक अच्छा तरीका नहीं है क्योंकि आपका पासवर्ड जेनकिंस जॉब की कॉन्फ़िगरेशन और लॉग इन में स्पष्ट पाठ के रूप में दिखाया गया है! केवल इसका उपयोग करें यदि आरएसए-कुंजी प्रमाणन या अन्य कॉन्फ़िगरेशन की संभावनाओं को समझने के लिए कोई रास्ता नहीं है!

 rm -rf $WORKSPACE && expect -c 'set timeout -1; spawn git clone USER@MYHOST:/MYPATH/MYREPO.git $WORKSPACE; expect "password:" {send "MYPASSWORD\r"}; expect eof' 

मैंने इन सभी सुझावों और अधिक की कोशिश की, सिर्फ इसलिए कि मैं अपने एडब्ल्यूएस उदाहरण से क्लोन बना सकता हूं। कुछ भी काम नहीं किया मैंने आखिरकार हताशा से धोखा दिया: मैंने अपनी स्थानीय मशीन पर id_rsa.pub की सामग्रियों की प्रतिलिपि बनाई थी और इसे मेरे एडब्ल्यूएस उदाहरण पर ~ / .ssh / known_hosts में जोड़ दिया था।