Git: สิทธิ์ที่ถูกปฏิเสธ (publickey) ร้ายแรง - ไม่สามารถอ่านจากที่เก็บระยะไกล ในขณะที่โคลนที่เก็บ Git


153

ฉันไม่สามารถโคลนที่เก็บ Git และได้รับข้อผิดพลาดนี้:

krishna.soni@KRISHNACHANDRAS /c/Projects $ git clone http://stage.abc.com:10088/pqr
http://<url>/<repository> Cloning into '<repository>'... fatal: could not read Username for 'http://<url>': No such file or directory

ฉันอ่านBitbucket, Windows และ“ fatal: ไม่สามารถอ่านรหัสผ่านสำหรับ”ได้ แต่ยังมีปัญหาอยู่

ฉันดำเนินการต่อไป แต่ตอนนี้ฉันได้รับข้อผิดพลาดนี้

sh.exe": chown: command not found

krishna.soni@KRISHNACHANDRAS /c
$ git clone ssh://krishna.sonipayu.in@stage.payupaisa.
/projects
Cloning into 'C:/projects'...
Permission denied (publickey).
fatal: Could not read from remote repository.

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

> krishna.soni@KRISHNACHANDRAS /c
>     $ git clone ssh:<url>
>     ts
>     Cloning into 'C:/projects'...
>     Permission denied (publickey).
>     fatal: Could not read from remote repository.

Please make sure you have the correct access rights

และที่เก็บมีอยู่


คุณแน่ใจหรือว่าเป็นที่เก็บคอมไพล์?
gravetii

ใช่แล้ว . ฉันใหม่สำหรับคอมไพล์รับข้อผิดพลาดนี้ในขณะที่โคลน ฉันเพิ่มอีเมลและชื่อในไฟล์กำหนดค่าทั่วโลกโดยใช้คำสั่ง git config - ผู้ใช้ทั่วโลกชื่อ "John Doe" $ git config
KCS

เหตุผลหลักคือ repo ไม่สามารถจำคุณได้ว่าเป็นผู้ใช้เซิร์ฟเวอร์ git คุณสามารถเข้าถึงเซิร์ฟเวอร์ผ่าน ssh ได้หรือไม่?
МалъСкрылевъ

หากใครบางคนกำลังมีปัญหานี้ในขณะที่ใช้ Github ให้ทำตามขั้นตอนที่กล่าวถึงที่นี่: help.github.com/th/articles/…มันใช้ได้กับฉัน
Rounak

คำตอบ:


69

ดูเหมือนว่าปัญหาการอนุญาต - ไม่ใช่ปัญหาของ Windows 7

คีย์ SSH ของคุณจะไม่ได้รับอนุญาต Permission denied (publickey)-

คุณต้องสร้างกุญแจสาธารณะ ssh และขอให้ผู้ดูแลระบบของที่เก็บ Git เพื่อเพิ่มsshกุญแจสาธารณะ

ข้อมูลเกี่ยวกับวิธีการทำ: การบันทึกคีย์ ssh ล้มเหลว


27
นี่มันแปลก ที่เก็บเป็นแบบสาธารณะและฉันกำลังโคลนที่เก็บข้อมูลสาธารณะ ฉันไม่แน่ใจว่าทำไมฉันจึงควรขออนุญาตจากผู้ดูแลระบบเพื่อโคลนพื้นที่เก็บข้อมูลสาธารณะของเขา / เธอโฮสต์บน Github
Shailen

5
ใช่เป็นเท็จคุณไม่จำเป็นต้องถามผู้ดูแลระบบใด ๆ เป็นปัญหากับคอมไพล์ท้องถิ่น
Ivan Castellanos

3
ทำไมมันยาก ฉันประสบความสำเร็จ แต่มันก็ไม่เจ็บปวด
Niklas R.

9
คุณไม่จำเป็นต้องอนุญาตกุญแจสำหรับ repos สาธารณะเพียงใช้โปรโตคอล HTTPS: stackoverflow.com/a/33072867/1385678
Diego V

225

สำหรับคนที่มาที่นี่ที่พยายามรับที่เก็บ แต่ไม่สนใจโปรโตคอล (ssh / https) คุณอาจต้องการใช้ https แทน ssh (ถ้ารองรับ)

ตัวอย่างเช่นคุณใช้

git clone https://github.com/%REPOSITORYFOLDER%/%REPOSITORYNAME%.git

แทน

git clone git@github.com:%REPOSITORYFOLDER%/%REPOSITORYNAME%.git

6
นี่คือแผนสำรองที่เหมาะสมที่สุดหากการอนุญาตของ ssh ไม่ได้รับการแก้ไขหรือคุณต้องการข้ามส่วนนั้น
Wahib Ul Haq

13
คำตอบนี้มีการเปลี่ยนแปลงกลไกการจากไปssh httpsไม่ได้แก้ไขปัญหาดั้งเดิมโดยใช้ ssh เพื่อเข้าถึงที่เก็บ ฉันสงสัยว่าสิ่งนี้สามารถรับการ upvoted เป็นคำตอบที่ดีสำหรับคำถาม คำตอบอื่น ๆ ด้านล่างกำลังแก้ไขอย่างถูกต้อง
Armin

3
ปัญหาดั้งเดิมคือมือใหม่ที่พยายามคอมไพล์ repo หากเป้าหมายคือดึง repo สาธารณะออกมานี่คือคำตอบที่มีประสิทธิภาพที่สุด
Vivek Chavda

ขอบคุณที่ช่วยชีวิตฉันจากการฆ่าตัวตาย โดยการนี้สามารถใช้สำหรับ repo ส่วนตัวที่คุณมีชื่อผู้ใช้และรหัสผ่าน
BILL WAGNER

81

หากยังคงมีปัญหาเกี่ยวกับการเข้าถึงหลังจากสร้าง SSH และเพิ่มลงในบัญชี Bitbucket ของคุณหรือที่ใดก็ตามคุณต้องทำสิ่งต่อไปนี้ในเทอร์มินัลบน GitBash, OSX หรือ Linux:

# Lists already added identities (‘ssh keys’)
ssh-add -l

จากนั้นหากคุณไม่เห็นคีย์ของคุณอยู่ในรายการให้เพิ่มคีย์ดังต่อไปนี้ (แทนที่identityด้วยชื่อจริง):

# Add a new identity
ssh-add ~/.ssh/identity

สิ่งนี้ใช้ได้สำหรับฉัน


3
ssh-add ~/.ssh/identityกลับข้อผิดพลาด/Users/lee/.ssh/identity: No such file or directory
lee

14
เรียกใช้ "ssh-add" จาก "~ / .ssh" (และป้อนข้อความรหัสผ่านสำหรับไฟล์ "~ / .ssh / id_rsa" เมื่อได้รับแจ้ง) แก้ไขปัญหาให้ฉัน
James Furey

1
ฉันสามารถดึง repo ของฉัน แต่ไม่ผลักโดยไม่ทำเช่นนี้ไชโย!
Dimitar Nestorov

@james Furey คำตอบช่วยฉัน sourcetree เพื่อระบุ ssh url เป็น repo คอมไพล์
แฟน YSR

2
ทำงานให้ฉัน ... หลังจากหลายชั่วโมงของการทำงานหนักและลองสิ่งที่แตกต่าง สิ่งเดียวคือแทนที่จะเป็นตัวตนในที่สุดใช้ชื่อในระบบของคุณเอง ไปที่โฟลเดอร์. ssh โดยทำคำสั่ง cd ในเทอร์มินัลแล้วพิมพ์คำสั่ง 'ls' ในเทอร์มินัล จากนั้นเล่นซ้ำคำสั่ง "identity" จากด้านบนด้วยไฟล์ของคุณเอง ไปที่เทอร์มินัล sourcetree และ: cd ~จากนั้น cd .sshจาก lsนั้น (คัดลอกชื่อโดยไม่มีนามสกุล. pub) จากนั้น (เรียกใช้คำสั่งนี้)ssh-add ~/.ssh/(copied name)
Tejas

21

ผมประสบปัญหาเดียวกันกับGitHub นี่คือวิธีการแก้ปัญหา!

  1. สร้างคีย์ SSH บนคอมพิวเตอร์ของคุณตามที่อธิบายไว้ที่นี่: กุญแจผลิต SSH
  2. เข้าสู่ระบบบัญชีของคุณ GitHub: GitHub เข้าสู่ระบบ
  3. ในบัญชีของคุณเพิ่มที่สร้างขึ้นใหม่ SSH สำคัญ: คีย์ SSH บัญชีของฉัน
  4. ลองอีกครั้งกับgit cloneโครงการ

ทำงานเหมือนมีเสน่ห์ !!
Prakhar

1
ตอนนี้ฉันใช้คำตอบนี้กับระบบปฏิบัติการใหม่ 3 ระบบในช่วง 5 ปีที่ผ่านมาและทำงานได้อย่างสมบูรณ์แบบทุกครั้ง
kotoole

Apparently High Sierra ต้องการให้ผู้ใช้ลงทะเบียนคีย์ในไฟล์. ssh / config El Capitan จัดการอย่างใดโดยปราศจากมัน
dsomnus

14

ฉันมีปัญหานี้ใน Mac - ในขณะที่ฉันตั้งค่า SSH ให้ถูกต้องเพื่อเข้าถึงที่เก็บ Git ของฉันหลังจากรีสตาร์ท (และบางครั้งที่ Mac ติดขัด) ข้อมูลรับรองทั้งหมดของฉันจะถูกลบ เห็นได้ชัดว่ามีการตั้งค่าคีย์ผับเป็น 644 ซึ่งทำให้มันถูกลบออกจากพวงกุญแจ หากต้องการอ่าน:

  • chmod 600 กุญแจสาธารณะ
  • ssh-add ~/.ssh/[your private key]- สิ่งนี้ควรแสดงว่ามีการเพิ่มข้อมูลประจำตัว ไฟล์คีย์ที่คุณต้องการคือไฟล์ที่ไม่มีนามสกุล. pub
  • ssh-add -l ควรแสดงตัวตนที่เพิ่งเพิ่มเข้ามาใหม่

แก้ไข: เห็นได้ชัดว่า MacOS มีแนวโน้มที่จะลบคีย์ - หลังจากดาวน์โหลดอัปเดต High Sierra (แต่ฉันยังไม่ได้ติดตั้ง) คีย์ของฉันถูกลบออกและฉันต้องเพิ่มอีกครั้งผ่าน ssh-add


2
โซลูชันนี้ยังคงมีความแม่นยำหลังจากที่คุณอัพเกรด macOS High Sierra เป็นเวอร์ชั่น 10.13.1 โดยเฉพาะ Sourcetree เป็นแอพที่โผล่ขึ้นมาปัญหาเมื่อฉันพยายามที่จะผลักดันความมุ่งมั่นไปยังพื้นที่เก็บข้อมูลระยะไกล ขั้นตอนข้างต้นแก้ไขปัญหาให้ฉันได้
Paul Bonneville

ฉันมีปัญหานี้ในวันที่ 10.13.4 และวิธีนี้ใช้ได้สำหรับฉัน
Andrew Ebling

11

ฉันยังต้องเผชิญกับปัญหาเดียวกัน ฉันทำสิ่งต่อไปนี้และได้ผลกับฉัน:

  1. สร้างคีย์จากไคลเอนต์ GIT GUI บน Windows คัดลอกคีย์นี้ไปยังคลิปบอร์ด
  2. เปิดบัญชีของคุณบนbitBucket/เว็บไซต์ git และเพิ่มรหัสนี้ในโปรไฟล์ของคุณ ด้วยวิธีนี้เซิร์ฟเวอร์รู้ว่าคุณเป็นผู้ใช้ที่ถูกต้องเข้าถึงจากระบบที่ถูกกฎหมาย
  3. แค่นั้นแหละ. คำสั่ง push ทั้งหมดใช้งานได้สำหรับฉันนับจากนี้ไป

สิ่งนี้ช่วยให้ฉันเห็นว่าฉันได้สร้าง RSA ของฉันโดยไม่เรียกใช้ Git Bash ในฐานะผู้ดูแลระบบซึ่งวางคีย์ RSA ของฉันในไดรฟ์ "h": oops:
tylerlindell

7

สำหรับฉันเมื่อฉันต้องการโคลนจากพื้นที่เก็บข้อมูลของฉันฉันมีข้อความเดียวกันสังเกตเห็นก่อนที่ "สิทธิ์ปฏิเสธ (publickey) ร้ายแรง: ไม่สามารถอ่านจากพื้นที่เก็บข้อมูลระยะไกล" ทางออกสำหรับกรณีของฉันคือไม่ใช้ sudo ก่อนโคลน นั่นแหละ


ขอบคุณมาก @mustapha คุณประหยัดเวลาของฉันจริงๆ
vayay kumar

7

Github (หรือ Bitbucket) ไม่พบคีย์ ssh ของคุณในเซิร์ฟเวอร์

เพียงเพิ่มรหัสของคุณในการตั้งค่าบัญชีของคุณ


6

หากคุณสร้างคีย์สาธารณะ ssh ใหม่และแทรกลงใน bitbucket หรือ github และ

มันไม่ได้ช่วย - โปรดลองรีสตาร์ทเครื่องคอมพิวเตอร์ของคุณ มันช่วยฉันได้ !!


ขอบคุณนี่คือสิ่งที่ฉันต้องทำเช่นกัน
Steph

ฉันต้องปิดเครื่องและเปิดเครื่องใหม่เพื่อดูว่าใช้งานได้
rahul

5

คุณจำเป็นต้องสร้างคีย์ SSH ssh-keygen -t rsaใหม่โดยการทำงาน


การอ้างอิง @Joel Heroku ถูกลบแล้ว ขอบคุณ
biniam

4

ฉันได้รับข้อผิดพลาด ...

Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

... เมื่อฉันพยายามติดต่อจาก Git Bash เพื่อ Bitbucket หลังจากแล็ปท็อปของฉันเสียชีวิตจากการอัปเดต Windows 10 ที่ไม่ดีและกลับสู่การตั้งค่าจากโรงงาน ฉันกู้คืนไฟล์ ssh ทั้งหมดของฉันจากการสำรองข้อมูล

สาเหตุของข้อผิดพลาดกลายเป็นไม่ตรงกันในชื่อบัญชี Windows ของฉันหลังจากที่คอมพิวเตอร์สร้างใหม่ ฉันเรียนรู้ว่าไฟล์กุญแจสาธารณะid_rsa.pubลงท้ายด้วยสตริงที่อ่านง่ายซึ่งประกอบด้วยชื่อบัญชี Windows ของฉันตามด้วย@เครื่องหมายและชื่อคอมพิวเตอร์

ตอนแรกที่ฉันตั้งค่าคอมพิวเตอร์ของฉันฉันสร้างชื่อบัญชี Windows รวมถึงชื่อกลางของฉัน แต่เมื่อคอมพิวเตอร์ของฉันถูกรีเซ็ตเป็นค่าเริ่มต้นจากโรงงานผู้ชาย DevOps คนใหม่ของเราสร้างชื่อบัญชีของฉันโดยไม่มีชื่อกลางของฉัน

เพื่อแก้ไขปัญหาฉันเพิ่งแก้ไขไฟล์กุญแจสาธารณะของฉันid_rsa.pubและลบชื่อกลางตอนต้นในชื่อของฉันในตอนท้าย ฉันใช้ชื่อคอมพิวเตอร์เครื่องเดียวกันก็ไม่เป็นไร ฉันคัดลอกเนื้อหาไฟล์ไปยังคลิปบอร์ดของ Windows จากนั้นฉันลงชื่อเข้าใช้ Bitbucket ไปที่การตั้งค่า Bitbucket ใต้อวตารของฉันและเพิ่มกุญแจสาธารณะใหม่ที่ฉันวางไว้ในเนื้อหาใหม่

กลับมาที่พรอมต์ Git Bash ฉันยืนยันว่าตอนนี้มันทำงานได้โดยป้อนคำสั่ง ...

ssh -T git@bitbucket.org

... และฉันได้รับข้อความที่ลงชื่อเข้าใช้กลับมา


4

ใน macOS / Linux (Ubuntu):

1ในการตรวจสอบสิทธิ์คุณต้องเพิ่มส่วนสาธารณะของคู่คีย์ SSH ของคุณเป็นบิตจากภายในการตั้งค่าผู้ใช้ของคุณ: การตั้งค่าผู้ใช้ -> คีย์ SSH

คุณจะพบส่วนสาธารณะดังกล่าวในไดเรกทอรี ~ / .ssh ของid_rsa.pubคุณ จดบันทึก .pubส่วนของชื่อไฟล์สำหรับสาธารณะ มันจะช่วยให้คุณสร้างมันขึ้นมาถ้าคุณยังไม่มีมัน

คุณยังไม่ได้ทำ ...

2.คุณต้องแจ้งให้ระบบของคุณทราบว่าต้องใช้คีย์ใดกับรีโมตโฮสต์ใดดังนั้นให้เพิ่มบรรทัดเหล่านี้ลงในไฟล์ ~ / .ssh / config

Host bitbucket.org
 IdentityFile ~/.ssh/PRIVATE_KEY_FILE_NAME

PRIVATE_KEY_FILE_NAMEตำแหน่งของส่วนส่วนตัวของคู่คีย์ SSH ของคุณอยู่ที่ไหนถ้าคุณไม่ได้ยุ่งกับมันโดยปกติชื่อเริ่มต้นคือ: id_rsa ในกรณีนี้แทนที่PRIVATE_KEY_FILE_NAMEข้างต้นด้วยid_rsa(คีย์ส่วนตัวไม่มี .pubส่วนขยาย)


หมายเหตุคุณสะกดคำว่า "Ubuntu" - การแก้ไขจะต้องมีอย่างน้อย 6 ตัวอักษรดังนั้นฉันจึงไม่สามารถแนะนำการแก้ไขได้ :)
Misha Nasledov

4

หัวข้อที่มีประโยชน์และฉันไม่ได้นำสิ่งใหม่มาสู่ตาราง ขั้นตอนที่ฉันทำนั้นเป็นส่วนหนึ่งของคำอธิบาย Maxime ชี้ไปที่เป็นประโยชน์ แต่บางคนอาจมองข้าม ส่วนที่เป็นเพิ่ม SSH สำคัญของคุณไปยังตัวแทน ssh

ฉันสร้างคีย์ ssh แล้ว แต่หลังจากรีบูตฉันไม่สามารถโคลนที่เก็บข้อมูลของฉันเองได้

ฉันต้องเริ่มต้น ssh-agent และเพิ่มไพรเวตคีย์ให้กับเอเจนต์นี้เพื่อโคลน

eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa

3

ฉันประสบปัญหาเดียวกันขณะกำลังเรียกใช้git cloneคำสั่งจากบรรทัดคำสั่งของ windows แต่คำสั่งทำงานประสบความสำเร็จจากGit Bash


3

ฉันมีปัญหาที่คล้ายกัน ฉันเปลี่ยนปุ่ม ssh และรีสตาร์ทและลองใช้โซลูชัน 'n' อื่น ๆ ทั้งหมด แต่ปัญหาที่แท้จริงสำหรับฉันคือโปรโตคอลเริ่มต้น gitlab ของเราเปลี่ยนจาก ssh เป็น https

ตรวจสอบ URL ระยะไกลด้วย

git remote -v

เปลี่ยน URL ระยะไกล

git remote set-url origin https://URL

มันสมบูรณ์แบบเราไม่จำเป็นต้องกำหนดค่า ssh
Rohit Parte

ฉันต้องทำเช่นเดียวกัน รหัส ssh ไม่ทำงานสำหรับฉันในกรณีนี้
Dani

ร้ายแรง: ไม่สามารถเข้าถึง ' bitbucket.org:xxxxxx/xxxxxxxxt ': หมายเลขพอร์ตที่ลงท้ายด้วย 'r'
nosequeweaponer

2

หากทั้งหมดล้มเหลวเช่นเดียวกับในกรณีของฉันถอนการติดตั้ง GIT ติดตั้งใหม่ ด้วยเหตุผลบางอย่างการแก้ไขนี้

PS

  1. ฉันพยายามสร้าง Keys ใหม่และอัปเดตที่คีย์สาธารณะ SSH
  2. ลองลบคีย์ทั้งหมดและพยายามสร้างคีย์ใหม่
  3. และไม่ไม่มีอะไรผิดปกติกับ. gitconfig ของฉัน

2

แก้ไขสำหรับhubเครื่องมือ cli:

  • git config --global hub.protocol https ในระยะยาว
  • git remote add OOPS https://github.com/isomorphisms/go.git&& git push OOPSสำหรับการแก้ไขทันที

ข้อผิดพลาดนี้เกิดขึ้นกับhubเครื่องมือบรรทัดคำสั่งเนื่องจากค่าhub.protocolgit-config เริ่มต้นผิด พวกเขาตั้งค่า repos เป็น

git://github.com/schacon/ticgit.git

แทนสิ่งที่ GitHub https://github.com/schacon/ticgit.gitจริงยอมรับคือ


การอ่านLESS=+/"HTTPS instead" man hubจะอธิบายว่าคำสั่ง "การแก้ไขระยะยาว" ข้างต้นมาจากที่ใด


สิ่งนี้ช่วยชีวิตฉันไว้!
เจย์ลี

1

ในขณะที่โคลนฉันมีปัญหาคล้ายกัน [ข้อผิดพลาดของฉัน: การอนุญาตถูกปฏิเสธ (publickey) ร้ายแรง: ไม่สามารถอ่านจากที่เก็บระยะไกล โปรดตรวจสอบให้แน่ใจว่าคุณมีสิทธิ์การเข้าถึงที่ถูกต้อง .. ฯลฯ ]

- ฉันใช้ bitBucket / UBUNTU14.04 ในกรณีของฉัน แต่ALREADYมีชุดของไฟล์คีย์ที่ฉันสร้างขึ้นก่อนหน้านี้และฉันได้เปลี่ยนชื่อของไฟล์ ฉันเพียงแค่คัดลอกไฟล์ไปยังรูปแบบชื่อ id_rsa & id_rsa.pub มาตรฐาน ฉันแล้วรันคำสั่งอีกครั้งโดยไม่มีปัญหา

OBTW : ฉันสามารถใช้พรอมต์รหัสผ่านด้วยการใช้สไตล์โคลนนิ่ง HTTP


0

ฉันมีปัญหาคล้ายกับ linux ฉันแก้ไขปัญหาโดยลงชื่อเข้าใช้เซิร์ฟเวอร์ github และสร้างคีย์การปรับใช้ ภายใต้การตั้งค่าสำหรับพื้นที่เก็บข้อมูล จากนั้นฉันคัดลอกและวางกุญแจสาธารณะของฉัน (ซึ่งมักจะอยู่ใน ~ / .ssh / id_rsa.pub แต่การกำหนดค่าของคุณอาจแตกต่างกัน) มีช่องทำเครื่องหมายเพื่อให้การเข้าถึงการเขียนคีย์นี้ คลิกที่มัน (เว้นแต่ว่าคุณกำลังใช้ git เพื่อปรับใช้เท่านั้นในกรณีนี้อย่าคลิกที่มัน)


0

ฉันมีข้อผิดพลาดเดียวกัน วิธีแก้ปัญหาของฉันคือออกจากระบบและลงชื่อเข้าใช้อีกครั้งเนื่องจาก ssh-agent ของฉันไม่ซิงค์กับคีย์ ssh จากระยะไกล

เพิ่มที่นี่ในกรณีที่ทุกคนเห็นว่าคำตอบอื่น ๆ ดูเหมือนจะไม่นำไปใช้กับสถานการณ์ของพวกเขา


0

ฉันกำลังเผชิญปัญหาเดียวกันขณะตั้งค่า ssh สำหรับ gitlab ฉันมี ssh แล้วgithubและฉันไม่สามารถเขียนทับได้ ขั้นตอนที่เหมาะกับฉันคือ:

  1. สร้าง SSH ssh-add /path/to/new/id_rsaกับเส้นทางใหม่และเพิ่มเข้าไปในรายการ
  2. สร้างไฟล์ชื่อconfigในการ~/.ssh/ใช้ vi ~/.ssh/config/ผมใช้
  3. เพิ่มสิ่งนี้ลงในไฟล์ที่สร้างใหม่

# GitLab.com server Host gitlab.com RSAAuthentication yes IdentityFile /path/to/new/id_rsa

  1. บันทึกและออก

หลังจากนั้นรีสตาร์ทเทอร์มินัลและลองกดมันควรจะทำงาน


0

หากคุณต้องการโคลนโครงการโอเพนซอร์สเพื่อส่งคำขอดึง:

ฉันต้องการโคลนโครงการโอเพนซอร์สเพื่อให้ฉันสามารถส่งคำขอดึงบางอย่าง ปัญหาคือฉันไม่ได้รับอนุญาตจากเจ้าของโครงการ ไม่ว่าเนื่องจากความตั้งใจของฉันคือส่ง PR นี่เป็นทางเลือกที่ทำงานได้:

ทางออกของฉัน:

  1. ที่เก็บส้อม

ส้อม Repo

  1. จากนั้นโคลนจากพื้นที่เก็บข้อมูลที่มีการแยกของคุณ โคลนจาก Repo ที่มีส้อม

  2. ทำงานกับคุณสมบัติของคุณแล้วส่งคำขอดึง


0

คุณสามารถลองเพิ่มคีย์ ssh ของคุณไปที่พวงกุญแจส่วนตัวของคุณ มันใช้งานได้สำหรับฉัน

ssh-add -K ~/.ssh/[your-private-key]

"ไม่รู้จักตัวเลือก - K"
JiříDoubravský

0

วิธีแก้ปัญหา: บนเซิร์ฟเวอร์ที่คุณพยายามโคลนหรือผลักดันจาก cat ~ / .ssh / id_rsa.pub ไปที่ GitHub การตั้งค่าSSH และ GPG Keys , ปุ่ม วางกุญแจ SSH ใหม่


0

ฉันเห็นข้อความผิดพลาดนี้มีเหตุผลมากมาย ฉันมีข้อผิดพลาดเดียวกันเมื่อพยายามตั้งค่าพื้นที่เก็บข้อมูลภายในเครื่องอีกแห่งหนึ่งพร้อมทำงานกับ ssh เป็นต้นและเชื่อมต่อกับเซิร์ฟเวอร์เดียวกัน แต่เป็นที่เก็บอื่น ๆ ไม่มีคำตอบอยู่ที่นี่เพื่อหา แต่ฉันคิดออก ดังนั้นฉันโพสต์มัน หวังว่าจะช่วยใครบางคน

git remote add origin git@git.ourserver.com:teamalpha/repositorytwo.git

0

ถ้าไม่มีคำตอบเหล่านี้ช่วยและ

  1. คุณกำลังใช้ Windows
  2. คุณสร้างรหัสด้วย Putty หรือติดตั้ง Putty บนพีซีของคุณ
  3. คุณสร้างคีย์ด้วย CMD หรือ PowerShell

ลอง

  1. ลบกุญแจของคุณ
  2. ค้นหา windows สำหรับ Git Bash จากนั้นสร้างคีย์ใหม่ด้วยบรรทัดคำสั่ง Git Bash
  3. เพิ่มกุญแจสาธารณะให้กับ Repo ออนไลน์ของคุณ

จากนั้นคุณจะพบหลังจากที่คอมไพล์คอมไพล์แล้วพิมพ์ใช่เพื่อยืนยันก็ควรเริ่มโคลนนิ่ง


-2

มันอาจจะโง่ แต่เกิดขึ้นกับเรา:

หากคุณใช้ bitbucket และ Sourcetree และคุณเพียงแค่คัดลอกวาง clone URL ไปยังกล่องโต้ตอบ repo ใหม่มันจะแสดงข้อผิดพลาดเดียวกันเมื่อดึงหรือดัน

ตรวจสอบให้แน่ใจว่าคุณลบเนื้อหา 'git clone' หน้า URL

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.