1. 程式人生 > 其它 >git clone opendev專案後git review -s報錯

git clone opendev專案後git review -s報錯

從review.opendev.org上下載了專案之後,進行修改,準備提交到主線,git review -s報錯

一、ssh祕鑰問題

二、gerrit社群的埠29418被牆無法使用

第一種情況:ssh祕鑰問題

先檢查能否連線opendev,原貼參考

1、執行ping review.opendev.org,看能否連通。

如若不能,需要檢查自己的DNS、網路連結等設定。

2、如果網路是通的,則檢查 預設的29418埠能否正常工作:

[[email protected] sandbox]nc review.opendev.org 29418

SSH-2.0-GerritCodeReview_2.11.4-11-ga14450f (SSHD-CORE-0.14.0)

如果結果如上所示,說明當前可以訪問29418埠,那問題可能出在key上。

3、重新檢查publickey能否工作https://review.opendev.org/settings/#SSHKeys(設定sshkey)

[[email protected] .ssh]# ssh -p 29418 [email protected] gerrit version

gerrit version 3.3.7-2-g17936a0b79-dirty

如果結果如上,說明可以正常訪問。

3.1

如果得到的資訊錯誤如

[[email protected] sandbox]# ssh -p 29418 [email protected] gerrit version

Warning: Permanently added '[review.opendev.org]:29418' (ECDSA) to the list of known hosts.

Permission denied (publickey).

說明key不能正常工作

解決:vi /root/.ssh/config檔案,裡面已經有review.opendev.org,加上IdentityFile,指定訪問該網站使用的祕鑰

Host review.opendev.org

User xxx

Port 29418

IdentityFile /var/lib/zuul/.ssh/id_rsa

第二種情況:gerrit社群的埠29418被牆無法使用

原地址參考:https://docs.opendev.org/opendev/infra-manual/latest/developers.html#accessing-gerrit-over-https

git review -s出現如下錯誤

[[email protected] manila]# git-review -s

Problem running 'git remote update gerrit'

Fetching gerrit

Connection to review.opendev.org closed by remote host.

fatal: The remote end hung up unexpectedly

fatal: early EOF

fatal: index-pack failed

error: Could not fetch gerrit

解決:設定通過https訪問Gerrit

1、如果之前設定過git-review失敗了,則要先從git中刪除Gerrit遠端:

git remote rm gerrit
然後再git remote add gerrit https://<username>@review.opendev.org/openstack/<project>.git 設定成https訪問,注意<username>替換成review.opendev.org賬號的裡面的username

2、用http再次提交執行git-review -s時,需要密碼,密碼為https://review.opendev.org/settings/http-password#HTTPCredentials 這裡生成的。輸入密碼後git review -s可完成。

git config --local credential.helper store 輸入密碼後執行指令儲存密碼