Bitbucket पर Git रिपॉजिटरी को पुश नहीं कर सकते


143

मैंने एक नया भंडार बनाया और मैं एक अजीब त्रुटि में चल रहा हूं। मैंने बिटबकेट पर पहले Git का उपयोग किया है, लेकिन मैंने अभी सुधार किया है और अब मुझे Git काम करने के लिए नहीं मिल सकता है। एक कमिट करने के बाद, मुझे अपना ईमेल और नाम ग्लोबल्स में जोड़ना था, लेकिन तब यह ठीक था।

जब मैं कमांड का उपयोग करने की कोशिश करता हूं

git push origin master

यह काम नहीं करता है। मुझे यह संदेश मिला:

$ git push origin master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

मैं यहां नुकसान में हूं। मेरा दोस्त जिसे मैं इस भंडार के साथ साझा कर रहा हूं, उसने इसे ठीक से एक्सेस किया और इसे ठीक करने के लिए धकेल दिया, लेकिन मैं इसे काम करने के लिए प्राप्त नहीं कर सकता।


4
आप अपने दूरस्थ url में gits के बजाय https का उपयोग कर सकते हैं। उदाहरण: yourusername@bitbucket.org/teamname/repository.git
अली

1
मैं कैसे आपकी मशीन पर SSH स्थापित करने के लिए पर Atlassian के ट्यूटोरियल निम्नलिखित बारीकी से एक ही समस्या हल हो: confluence.atlassian.com/display/BITBUCKET/Set+up+SSH+for+Git
SWS

इसी तरह का मुद्दा: stackoverflow.com/questions/12940626/…
JMoran

जवाबों:


229

यह सिर्फ Windows पर Git और BitBucket से शुरू होने वाले लोगों के लिए लिखना और जो Bash से परिचित नहीं हैं (क्योंकि यह एक सामान्य समस्या और उच्च रैंकिंग वाला Google परिणाम है जब प्रश्न के भीतर त्रुटि संदेश की खोज होती है)।

जो लोग कोई आपत्ति नहीं है के लिए HTTPS और त्वरित सुधार के लिए देख रहे हैं, जो, के तहत निर्देशों के लिए इस सवाल का जवाब के नीचे करने के लिए स्क्रॉल के लिए The Lazy

वास्तविक समस्या को हल करने के इच्छुक लोगों के लिए, नीचे दिए गए निर्देशों का पालन करें:

एसएसएच मुद्दे को जल्द से जल्द ठीक करना

यह VonC द्वारा लिंक किए गए URL से प्राप्त निर्देशों का एक समूह है। यह संभव के रूप में लचीला और रसीला होने के लिए संशोधित किया गया था।

  • टाइप न करें $या कोई भी रेखा जो शुरू न हो $( $इसका मतलब यह है कि आप GitBash में टाइप करें)।

  • GitBash खोलें

यदि आपने पहले से नहीं किया है तो अपनी वैश्विक जानकारी सेट करें:

$ git config --global user.name "Your Name"
$ git config --global user.email "you@example.com"

ओपनएसएसएच के लिए जाँच करें:

$ ssh -v localhost
OpenSSH_4.6p1, OpenSSL...

कुछ ऐसा ही देखा?

  • हाँ: जारी रखें।
  • नहीं: LAZY अनुभाग के लिए छोड़ें या VONC से जुड़े लेख का अनुसरण करें।

देखें कि क्या आपने पहले ही कुंजियाँ बना ली हैं:

$ ls -a ~/.ssh/id_*

यदि दो फाइलें हैं, तो आप अगले चरण को छोड़ सकते हैं।

$ ssh-keygen

चूक के रूप में सब कुछ छोड़ दें, एक पासफ़्रेज़ दर्ज करें। अब आपको इस आदेश के साथ परिणाम देखना चाहिए:

$ ls -a ~/.ssh/id_*

मौजूदा कॉन्फ़िग फ़ाइल की जाँच करें:

$ ls -a ~/.ssh/config

यदि आपको कोई परिणाम मिलता है, तो गलत जानकारी के लिए इस फ़ाइल की जाँच करें। यदि कोई फ़ाइल मौजूद नहीं है, तो निम्न कार्य करें:

$ echo "Host bitbucket.org" >> ~/.ssh/config
$ echo " IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config

सामग्री की पुष्टि करें:

$ cat ~/.ssh/config

Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa
  • "IdentityFile" से पहले एकल स्थान की आवश्यकता है।

हर बार जब आप GitBash चलाते हैं, तो आप SSH एजेंट शुरू कर रहे हैं:

$ cat ~/.bashrc
  • यदि आप किसी फ़ंक्शन को कहते हैं start_agent, तो यह चरण पूरा हो चुका है।
  • यदि कोई फ़ाइल नहीं है, तो जारी रखें।
  • यदि कोई ऐसी फ़ाइल है जिसमें यह फ़ंक्शन नहीं है, तो आप एक चिपचिपी स्थिति में हैं। यह शायद इसे सुरक्षित करने के लिए सुरक्षित है (नीचे दिए गए निर्देशों का उपयोग करके) लेकिन यह नहीं हो सकता है! यदि अनिश्चित है, तो नीचे दिए गए निर्देशों का पालन करने से पहले अपने .bashrc का बैकअप बनाएं या LAZY सेक्शन के लिए आगे जाएं ।

अपनी .bashrc फ़ाइल बनाने के लिए GitBash में निम्न दर्ज करें:

$ echo "SSH_ENV=$HOME/.ssh/environment" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "# start the ssh-agent" >> ~/.bashrc
$ echo "function start_agent {" >> ~/.bashrc
$ echo "    echo \"Initializing new SSH agent...\"" >> ~/.bashrc
$ echo "    # spawn ssh-agent" >> ~/.bashrc
$ echo "    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    echo succeeded" >> ~/.bashrc
$ echo "    chmod 600 \"\${SSH_ENV}\"" >> ~/.bashrc
$ echo "    . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "    /usr/bin/ssh-add" >> ~/.bashrc
$ echo "}" >> ~/.bashrc
$ echo "" >> ~/.bashrc
$ echo "if [ -f \"\${SSH_ENV}\" ]; then" >> ~/.bashrc
$ echo "     . \"\${SSH_ENV}\" > /dev/null" >> ~/.bashrc
$ echo "     ps -ef | grep \${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {" >> ~/.bashrc
$ echo "        start_agent;" >> ~/.bashrc
$ echo "    }" >> ~/.bashrc
$ echo "else" >> ~/.bashrc
$ echo "    start_agent;" >> ~/.bashrc
$ echo "fi" >> ~/.bashrc

सत्यापित करें कि फ़ाइल सफलतापूर्वक बनाई गई थी (आपका "केवल जहाँ आपका" नाम दिखाई देता है) अलग होना चाहिए:

$ cat ~/.bashrc
SSH_ENV=/c/Users/yourusername/.ssh/environment

# start the ssh-agent
function start_agent {
    echo "Initializing new SSH agent..."
    # spawn ssh-agent
    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
    echo succeeded
    chmod 600 "${SSH_ENV}"
    . "${SSH_ENV}" > /dev/null
    /usr/bin/ssh-add
}

if [ -f "${SSH_ENV}" ]; then
     . "${SSH_ENV}" > /dev/null
     ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
        start_agent;
    }
else
    start_agent;
fi
  • GitBash को बंद करें और इसे फिर से खोलें।
  • आपको अपने पासफ़्रेज़ के लिए (एसएसएच फ़ाइल जो आपने पहले उत्पन्न की थी) के लिए कहा जाना चाहिए।
  • यदि कोई संकेत नहीं है, तो आपने या तो पासफ़्रेज़ सेट नहीं किया है या GitBash .bashrc स्क्रिप्ट नहीं चला रहा है (जो कि अजीब होगा इसलिए इसकी सामग्री की समीक्षा करने पर विचार करें!)। यदि आप इसे Mac (OS X) पर चला रहे हैं, .bashrcतो डिफ़ॉल्ट रूप से निष्पादित नहीं होता है - .bash_profileहै। इसे ठीक करने के लिए, इस स्निपेट को अपने पास रखें .bash_profile:[[ -s ~/.bashrc ]] && source ~/.bashrc

यदि आपने पासफ़्रेज़ दर्ज नहीं किया है, तो GitBash शुरू करते समय आपको कुछ ऐसा दिखाई देगा:

Initializing new SSH agent...
succeeded
Identity added: /c/Users/yourusername/.ssh/id_rsa (/c/Users/yourusername/.ssh/id_rsa)

और निम्नलिखित परिणाम लौटाना चाहिए:

$ ssh-add -l

हालाँकि, यदि आपको निम्न से मिलता है ssh-add -l:

Could not open a connection to your authentication agent.

यह SSH एजेंट और आपके .bashrc का कारण नहीं बन पाया।

यदि, GitBash शुरू करते समय, आप इसे देखते हैं:

Initializing new SSH agent...
sh.exe": : No such file or directory

इसका मतलब है कि आप फ़ाइल से गूँजते समय $ a से बचना भूल गए (यानी चर का विस्तार किया गया)। इसे हल करने के लिए अपने .bashrc को पुनः बनाएं।

सत्यापित करें कि एजेंट चल रहा है और आपकी चाबियाँ जोड़ी जा चुकी हैं:

$ ssh-add -l

इसके समान कुछ लौटाना चाहिए:

2048 0f:37:21:af:1b:31:d5:cd:65:58:b2:68:4a:ba:a2:46 /Users/yourusername/.ssh/id_rsa (RSA)

अपनी सार्वजनिक कुंजी प्राप्त करने के लिए निम्नलिखित कमांड चलाएँ:

$ cat ~/.ssh/id_rsa.pub

(यह "ssh-rsa ......" से शुरू होने वाली किसी चीज़ को वापस करना चाहिए।

  • GitBash विंडो आइकन पर क्लिक करें
  • संपादित करें पर क्लिक करें
  • Mark पर क्लिक करें
  • अपने माउस (अग्रणी ssh-rsaबिट और अनुगामी == youremail@yourdomain.comबिट सहित) का उपयोग करते हुए सार्वजनिक कुंजी को हाइलाइट करें
  • खिड़की पर राइट-क्लिक करें (एक प्रतिलिपि करता है)
  • नोटपैड में अपनी सार्वजनिक कुंजी चिपकाएँ।
  • सभी नई सूची को हटा दें जैसे कि यह केवल एक पंक्ति है।
  • CTRL+Aफिर CTRL+Cसार्वजनिक कुंजी को अपने क्लिपबोर्ड पर कॉपी करने के लिए दबाएँ ।

निम्न चरणों का पालन करके अपनी निजी कुंजी को BitBucket के साथ कॉन्फ़िगर करें:

  • अपना ब्राउज़र खोलें और BitBucket.org साइट पर जाएँ
  • BitBucket.org पर लॉगइन करें
  • अपने अवतार पर क्लिक करें (शीर्ष-दाएं)
  • खाता प्रबंधित करें पर क्लिक करें
  • SSH कुंजी (बाएं हाथ के मेनू पर सुरक्षा के तहत) पर क्लिक करें
  • Add Key पर क्लिक करें
  • Global Public Keyलेबल के लिए दर्ज करें
  • आपके द्वारा कॉपी की गई सार्वजनिक कुंजी को नोटपैड से चिपकाएं

एक Global Public Keyप्रविष्टि अब आपकी चाबियों की सूची में दिखाई देनी चाहिए।

  • GitBash पर लौटें
  • अपनी परियोजना युक्त निर्देशिका में सीडी
  • अपनी उत्पत्ति को SSH भिन्नता में बदलें (ऐसा नहीं होगा यदि आप LAZY चरणों के लिए भागे हों )

अपने उपाय देखें:

$ git remote -v

SSH url पर स्विच करें:

$ git remote set-url origin git@bitbucket.org:youraccount/yourproject.git

कार्य क्रम में चीजों की जाँच करें:

$ git remote show origin

आपको कुछ इस तरह से देखना चाहिए:

Warning: Permanently added the RSA host key for IP address '...' to the list of known hosts.
* remote origin
  Fetch URL: git@bitbucket.org:youruser/yourproject.git
  Push  URL: git@bitbucket.org:youruser/yourproject.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (fast-forwardable)

किया हुआ!

आप SSH के बजाय HTTPS का उपयोग करने का विकल्प चुन सकते हैं। दूरस्थ संचालन के दौरान आपको अपना पासवर्ड टाइप करना होगा (इसे एक बार टाइप करने के बाद इसे अस्थायी रूप से कैश किया जाता है)। यहां बताया गया है कि आप HTTPS को कैसे कॉन्फ़िगर कर सकते हैं:

LAZY के लिए

आपको VONC द्वारा बताए गए SSH मुद्दे को ठीक करना चाहिए; हालाँकि, यदि आप जल्दबाज़ी करने की जल्दबाज़ी में हैं और आपके पास अभी नया सार्वजनिक कुंजी उत्पन्न करने के लिए उपकरण / समय / ज्ञान नहीं है, तो अपने मूल को HTTPS विकल्प में सेट करें:

> https://accountname@bitbucket.org/accountname/reponame.git

एक GUI टूल का उपयोग करना जैसे कि TortoiseGit या कमांड लाइन टूल

यहाँ इस वैकल्पिक मूल URL का प्रलेखन है।

यदि कोई मौजूद नहीं है, तो एक मूल जोड़ने के लिए कमांड लाइन:

git remote add origin https://accountname@bitbucket.org/accountname/reponame.git

मौजूदा मूल को बदलने के लिए कमांड लाइन:

git remote set-url origin https://accountname@bitbucket.org/accountname/reponame.git

नोट: आपका खाता नाम आपका ईमेल नहीं है।

आप अपनी वैश्विक जानकारी भी सेट करना चाह सकते हैं:

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

फिर अपने पुश को फिर से आज़माएं (दोबारा करने की ज़रूरत नहीं)

git push origin master

गूंज "मेजबान bitbucket.org" >> ~ / .ssh.config, कि अंतिम 'नहीं होना चाहिए।' एक '/' हो?
पीटर

1
कभी-कभी ऐसा होता है कि आपने ऊपर बताई गई सभी चीज़ों को जोड़ दिया है, ~/.bashrcलेकिन फिर भी जब आप कमांड चलाते हैं, तब ssh-all -lभी यह दिखाता है No agent कि इस मामले में इस कमांड को आज़माएँ ssh-agent /bin/bashऔरInitializing new SSH agent...
shinesecret

5
सबसे अच्छे जवाबों में से एक मैं
स्टैकऑवरफ्लो

1
@ जैलगार्डो - अच्छा सवाल! अच्छी खबर नहीं है। वे बैश शेल स्क्रिप्ट में वैरिएबल हैं - वे बैच फ़ाइलों में पर्यावरण चर के समान हैं।
ग्रीम विकस्टेड

1
यह तथ्य कि यह स्वीकृत उत्तर नहीं है, मेरे दिल को चोट पहुँचाता है। महान राइटअप!
रूबी_न्यूबी १३'१ew

58

यदि आप निजी कुंजी जोड़ना भूल गए तो यह त्रुटि भी होती है ssh-agent। इसके साथ करें:

ssh-add ~/.ssh/id_rsa

4
यह मेरे मामले में जवाब था, जब मैं एक नई कुंजी बनाता हूं तो मैं हमेशा कुछ भूल जाता हूं।
amertkara

1
ऊपर पोस्ट के माध्यम से जाने के बाद यह मदद की गई थी
टोनी मेरिट

यह मेरे लिए काम किया :) लेकिन आपको यह सुनिश्चित करने की आवश्यकता है कि आपके पास पहले से ही आपके स्थानीय निर्देशिका में निजी कुंजी है और आपके बिटबकेट खाते में पंजीकृत सार्वजनिक कुंजी
डैनियल

25

रिफॉर्मेटिड का मतलब है कि आपने अपनी सार्वजनिक और निजी ssh कुंजियों को (~ / .ssh में) डिलीट कर दिया है।

आपको "BitBucket के साथ SSH प्रोटोकॉल का उपयोग करें ", " GitBash के साथ Git के लिए SSH सेट अप करें " के रूप में प्रलेखित, उन्हें अपने BitBucket प्रोफ़ाइल पर अपनी सार्वजनिक ssh कुंजी प्रकाशित करने और प्रकाशित करने की आवश्यकता है ।

खाते-> प्रबंधित खाते-> एसएसएच कुंजी:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_manage_account.png

फिर:

http://solvedproblems.hydex11.net/_media/solved-problems/crazy-problems/bitbucket_add_ssh.png

" JetBrains सॉफ़्टवेयर के साथ मर्क्यूरियल / बिटबकेट को एकीकृत करना "


7
बस इसमें थोड़ा सा जोड़ना है। सुनिश्चित करें कि आप BitBucket का उपयोग करते हैं (जैसा कि स्क्रीनशॉट में दिखाया गया है) कि आप अपने खाते के SSH कुंजी (खाते-> प्रबंधित खाते-> SSH कुंजी) में SSH कुंजी जोड़ते हैं। रिपॉजिटरी सेटिंग्स के माध्यम से इसे परिनियोजन कुंजी के रूप में जोड़ना केवल उस कुंजी को रीड-ओनली ऑपरेशंस (कोई कमिटिंग नहीं) के लिए उपयोग किया जाएगा।
कपड़ाकाक

@ वस्त्रका I सहमत। मैंने अधिक विस्तृत चित्रों को जोड़ने के उत्तर में संशोधन किया है।
वॉनज

1
@VonC - इसे पोस्ट करने के लिए धन्यवाद। मैं इसे एक विंडोज मशीन पर काम करने के लिए व्यर्थ करने की कोशिश कर रहा हूं, और आखिरकार यह चाल चली गई। धन्यवाद, बेन
ben18785

21

मैंने कमांड का उपयोग करके रिमोट को हटाकर इसे हल किया:

git remote remove origin

और तब ssh के बजाय https url का उपयोग करके रिमोट जोड़ने की कोशिश की

git remote add origin httpsUrl

यह जीथब क्रेडेंशियल्स के लिए पूछता है। क्रेडेंशियल दर्ज करें और फिर उपयोग करने के लिए जोर लगाने की कोशिश करें:

git push origin master

1
इससे मुझे मदद मिली। यह मेरे मामले में सही उत्तर है। धन्यवाद
binsnoel

इससे मेरा काम बनता है। मैंने उत्पत्ति को नहीं हटाया, मैंने
श्टाइनरॉइड

सीधे आगे की प्रतिक्रिया के लिए धन्यवाद। एक आकर्षण की तरह काम किया - यह वही था जो मैं देख रहा था।
एलेक्जेंड्रा

4

मुझे भी यही समस्या थी। मेरे SSH कुंजी सही ढंग से सेट किए गए थे। मैंने इस तरह की समस्या को ठीक किया।

Bitbucket में नया प्रोजेक्ट बनाने के बाद, क्लोन का उपयोग करें। टर्मिनल में क्लोनिंग कमांड दर्ज करें और इसे आपके कंप्यूटर पर खाली प्रोजेक्ट क्लोन करना चाहिए। उसके बाद आप अपनी फाइलों को इस निर्देशिका में कॉपी कर सकते हैं और बिटकॉइन के लिए कमिट करना और धक्का देना शुरू कर सकते हैं।


1
कितना अजीब है। मुझे आज ओपी के समान समस्या थी, लेकिन बिना किसी पुनर्स्थापना के या किसी भी सिस्टम में बदलाव किए बिना, मेरी चाबियाँ ठीक थीं। इस git remote addप्रक्रिया ने आज काम नहीं किया - पुश करने की कोशिश करते समय मुझे त्रुटि मिली - लेकिन .git को हटाना और फिर git cloneअपने स्रोत (सिर्फ एक README.md) का उपयोग करना और पुन: उपयोग करना ठीक काम करता है। धन्यवाद राफेल - मैंने निश्चित रूप से यह कोशिश करने के लिए नहीं सोचा होगा कि यदि आपके उत्तर के लिए नहीं।
कृष

खुशी है कि इस समाधान ने आपकी मदद की
राफेल

1
आपके उत्तर के लिए धन्यवाद। मैं सिर्फ एक नई निर्देशिका बनाकर और उस नए डायर में क्लोन करके समस्या को ठीक करने में सक्षम था। mkdir /tmp/JUNK; cd /tmp/JUNK; git clone ...; cd ..; rm -rf JUNK
रेड क्रिकेट

4

बस ~ / .ssh डायरेक्टरी
रेफरी के तहत कॉन्फिगर फाइल की जरूरत है : https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html
कॉन्फिगरेशन फाइल में bellow कॉन्फ़िगरेशन जोड़ें

Host bitbucket.org
 IdentityFile ~/.ssh/<privatekeyfile>

1
तुमने मेरी जान बचाई!
एलेक्स

2

दो छोटे स्पष्टीकरण जो किसी भ्रम की स्थिति से मुझे बचा सकते हैं:

1 - कनेक्शन URL HTTPS और SSH के लिए अलग-अलग होते हैं

Https के माध्यम से कनेक्ट करते समय, आप उपयोग करते हैं

https://your_account_name@bitbucket.org/owner-account/repo-name.git

हालांकि जब SSH के माध्यम से कनेक्ट होता है, तो खाता नाम हमेशा "git" होता है

ssh://git@bitbucket.org/owner-account/repo-name.git

आपके खाते के नाम के साथ SSH से जुड़ने का प्रयास करने से मूल पोस्टर को प्राप्त त्रुटि हो जाएगी। यह है कि आप git @ से जुड़ने का परीक्षण कैसे कर सकते हैं, फिर गलती से अपने उपयोगकर्ता नाम के साथ प्रयास करें और एक त्रुटि देखें।

2 - टीम खातों के माध्यम से SSH कुंजी 2017 में पदावनत की जाएगी

यदि आप टीम खातों पर एसएसएच कुंजी स्थापित कर रहे हैं, तो वे उन्हें व्यक्तिगत खातों में बदलने की सलाह देते हैं। ई से बचने के लिए एक उपयोगी टिप


1

यदि आप SourceTree का उपयोग कर रहे हैं (मैं 2.4.1 का उपयोग कर रहा हूं), तो मुझे SSH कुंजी उत्पन्न करने और इसे मेरी बिटबकेट सेटिंग्स में जोड़ने का एक सरल तरीका मिला। इससे मेरे लिए समस्या हल हो गई।

  1. SourceTree में, प्राथमिकताएं पर जाएं।
  2. खाते टैब पर जाएं और अपना खाता चुनें।
  3. क्लिपबोर्ड में SSH कुंजी उत्पन्न करने और कॉपी करने का विकल्प होना चाहिए।
  4. एक बार जब आप इसे कॉपी कर लेते हैं, तो अपने ब्राउज़र में Bitbucket पर जाएं। [अवतार] -> बिटबकैट सेटिंग्स पर जाएं।
  5. SSH कीज पर जाएं।
  6. Add कुंजी पर क्लिक करें
  7. आपके द्वारा कॉपी की गई कुंजी में पेस्ट करें।

मुझे Bitbucket से एक पुष्टिकरण ईमेल प्राप्त हुआ कि मेरे खाते में एक SSH कुंजी जोड़ी गई थी।

संदर्भ के लिए, macOS पर, टर्मिनल का उपयोग करके, आप अपने डिवाइस के लिए उत्पन्न कुंजियों को देखने के लिए निम्न कमांड का उपयोग कर सकते हैं। यह वह जगह है जहां आपके द्वारा बनाई गई कुंजी संग्रहीत है।

ls -la ~/.ssh

जैसा कि दूसरों ने कहा है, इस दस्तावेज़ ने मेरी मदद की: बिटबकेट क्लाउड के साथ एसएसएच प्रोटोकॉल का उपयोग करें


1

एटलसियन ट्यूटोरियल के रूप में ssh करें और सुनिश्चित करें कि प्रोफ़ाइल में निजी कुंजी चिपकाई जा रही है, रिपॉजिटरी में नहीं। :)


क्या आप कृपया बताए गए लिंक को शामिल कर सकते हैं Atlassian tutorial? प्रोफ़ाइल में कुंजी पेस्ट करने के लिए कौन से चरण हैं और मुझे कैसे पता चलेगा कि यह रिपॉजिटरी में चिपकाया गया है?
EmmanuelB

वह यहीं है। अपने केस संयोजन के लिए सबसे अच्छा विकल्प चुनें! confluence.atlassian.com/bitbucket/…
हेक्टर

0

मुझे एक ही रिपॉजिटरी के लिए यह एक ही त्रुटि मिली - अचानक, अन्य सभी लोग थे और अभी भी ठीक काम करते हैं जब मैं कमिट्स पुश करने की कोशिश कर रहा हूं। समस्या SSH कुंजी के साथ दिखाई देती है (जैसा कि आप पहले से ही पिछली टिप्पणियों से जानते हैं) - बिटबकेट पर View Profileफिर क्लिक करेंManage Account

बाएं हाथ की ओर SSH Keysफिर ~ / .shsh / निर्देशिका के तहत आपके सिस्टम पर जो भी आपके पास है उसे जोड़ें पर क्लिक करें ।

यदि आपके पास अभी तक कोई जनरेट नहीं हुआ है - किसी एक पोस्ट से निर्देशों का उपयोग करें, लेकिन यह सुनिश्चित करें कि आप डिफ़ॉल्ट id_dsa.pub फ़ाइल या कस्टम नाम का उपयोग करते हैं, बाद में -iजब आपको कुंजी के लिए पथ के साथ विकल्प की आवश्यकता होती है कनेक्ट करें

ssh -i ~/.ssh/customkeyname username@ip_address

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


0

मुझे वह समाधान मिला जो मेरे लिए सबसे अच्छा काम करता था और छोटे-छोटे विखंडों में धकेल देता था।

और कमिट से बड़ी स्क्रीनशॉट छवि फ़ाइलों (10mb +) को हटा रहा है

बिन फ़ाइलों की सीमा के बारे में सुरक्षा अंत में एक मुद्दा नहीं थी


आपको उपरोक्त त्रुटि मिली, ओपी द्वारा नोट किया गया, और यह एक सुरक्षा / सुरक्षा मुद्दा नहीं था? यह आपकी प्रतिबद्धता का आकार था?
जॉनजैज

यही हुआ
हैरी बोश

0

यह त्रुटि तब भी दिखाई देती है जब रिपॉजिटरी मौजूद नहीं होती है। मैंने सभी जवाबों की कोशिश की जब तक मैंने नहीं देखा कि रेपो नाम एक डैश गायब था


0

त्रुटियों के लिए:

[त्रुटि] रिपॉजिटरी पहुंच से वंचित। परिनियोजन कुंजी के माध्यम से पहुँच केवल-पढ़ने के लिए है। घातक: दूरस्थ भंडार से नहीं पढ़ सकता था। कृपया सुनिश्चित करें कि आपके पास सही एक्सेस अधिकार हैं और रिपॉजिटरी मौजूद है।

[त्रुटि] घातक: दूरस्थ रिपॉजिटरी से नहीं पढ़ा जा सकता है।

[त्रुटि] घातक: 'https' के लिए दूरस्थ सहायक खोजने में असमर्थ

मैंने इस कदम के बाद हल किया:

पहले इस निर्भरता को स्थापित करें:

$ yum install expat expat-devel openssl openssl-devel

फिर गिट निकालें:

$ yum remove git git-all

अब इस मामले में पिछले संस्करण पर Git बनाएँ और स्थापित करें:

$ wget https://github.com/git/git/archive/v2.13.0.tar.gz
$ tar zxf v.2.13.0.tar.gz
$ cd git-2.13.0/

फिर कॉन्फ़िगर के लिए:

$ make configure
$ ./configure --with-expat --with-openssl

और अंत में इस तरह स्थापित करें:

$ make 
$ make install install-doc install-html install-info

कि अब, अपने रेपो को https से कॉन्फ़िगर करें:

$ git remote add origin https://github.com/*user*/*repo*.git
# Verify new remote
$ git remote -v

यदि आपने अपने दूरस्थ सर्वर में ssh कुंजी को कॉन्फ़िगर किया है तो आपको उसे हटाना होगा।


0

मुझे यह त्रुटि मिली

दूरस्थ होस्ट द्वारा बंद किए गए bitbucket.org के लिए कनेक्शन। घातक: दूरस्थ भंडार से नहीं पढ़ सकता था। कृपया सुनिश्चित करें कि आपके पास सही एक्सेस अधिकार हैं।

फिर मैंने कोशिश की

git config --global user.email "you@example.com"

बिना उद्धरण के काम किया।


0

मैंने पाया कि git कमांड लाइन ने मेरे पेजेंट जेनरेट की (फैंसी विन्डोज़ 10) को फैंसी नहीं किया।

सर्वरफॉल्ट पर मेरा जवाब देखें


0

मैं macOS का उपयोग कर रहा हूं और हालाँकि अगली बार जब मैंने पुश करने की कोशिश की तो मैंने अपनी सार्वजनिक कुंजी को बिटकॉइन में सेट किया था

रिपॉजिटरी एक्सेस से वंचित।

घातक: दूरस्थ भंडार से नहीं पढ़ सकता था।

कृपया सुनिश्चित करें कि आपके पास सही एक्सेस अधिकार हैं और रिपॉजिटरी मौजूद है।

मुझे क्या करना था चरण 2. बिटबकेट एसएसएच कुंजी सेटअप गाइड और विशेष रूप से 3 चरण में वर्णित ssh- एजेंट के लिए कुंजी जोड़ें :

(macOS केवल) ताकि आपका कंप्यूटर आपके पासवर्ड को हर बार याद रखें कि यह पुनरारंभ हो जाए, (~ / .ssh / config) फ़ाइल खोलें या इन पंक्तियों को फ़ाइल में जोड़ें:

होस्ट *
UseKeychain हाँ

आशा है कि यह एक ही समस्या के साथ एक मैक उपयोगकर्ता की मदद करता है।



0

मेरे पास यह मुद्दा था और मुझे लगा कि मैं पागल हूं। मैं 20 साल से SSH का उपयोग कर रहा हूं। और 2012 के बाद से एसएसएच पर कब्जा ... लेकिन मैं अपने होम कंप्यूटर पर अपनी बिटकॉइन रिपॉजिटरी क्यों नहीं ला सका?

ठीक है, मेरे पास दो बिटबकेट खाते हैं और मेरे एजेंट के अंदर 4 एसएसएच कुंजी भरी हुई हैं। यहां तक ​​कि अगर मेरा। ssh / config सही कुंजी का उपयोग करने के लिए कॉन्फ़िगर किया गया था। जब ssh कनेक्शन को इनिशियलाइज़ कर रहा था, तो यह उन्हें एजेंट में लोड करने के लिए इस्तेमाल कर रहा था। इसलिए मैं अपने व्यक्तिगत बिटकॉइन खाते में लॉग इन हो रहा था।

फिर रेपो लाने के लिए एक निषिद्ध त्रुटि प्राप्त करना। समझ में आता है।

मैंने एजेंट से चाबी उतारी

ssh-add -d ~/.ssh/personal_rsa

तब मैं रेपो ला सकता था।

... बाद में मुझे पता चला कि मैं इसे केवल निर्दिष्ट पहचान का उपयोग करने के लिए मजबूर कर सकता हूं

 Host bitbucket.org-user2
     HostName bitbucket.org
     User git
     IdentityFile ~/.ssh/user2
     IdentitiesOnly yes

मैं उस अंतिम विकल्प के बारे में नहीं जानता था IdentitiesOnly

बिटकॉइन प्रलेखन से ही

https://blog.developer.atlassian.com/different-ssh-keys-multiple-bitbucket-accounts/


-1

कोशिश करो

git remote add origin <HTTP URL>

1
हमें हर समय हम उपयोगकर्ता नाम / पासवर्ड टाइप करना पसंद नहीं करते हैं, हम बिटबकैट / गीथब / आदि में लाते हैं /
मैथ्यू जे।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.