[英]Unable to Clone Gerrit Repository
我正在嘗試連接到我的 VPS 上托管的 gerrit。 我正在使用 Git Bash 作為 windows。我在 GitBash 中使用 ssh-keygen 生成了 SSH 密鑰,並在 gerrit 服務器上添加了密鑰。 當我運行ssh -p 29418 <username>@<gerrit-server>
我會看到下面的歡迎信息
**** Welcome to Gerrit Code Review ****
Hi Full Name, you have successfully connected over SSH.
Unfortunately, interactive shells are disabled.
To clone a hosted Git repository, use:
git clone ssh://username@<gerrit-server>:29418/REPOSITORY_NAME.git
但是當我通過運行以下命令克隆存儲庫時
git clone ssh://<username>@<gerrit-server>:29418/project-name.git
我在我的 Git Bash 終端中看到以下錯誤
Cloning into 'project-name'...
ssh_exchange_identification: Connection closed by remote host
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我無法理解發生了什么以及如何在我的機器上成功克隆我的項目。 誰能幫我解決這個問題?
更新-1:
我仍然無法弄清楚問題出在哪里,但我只想分享一些正在發生的奇怪事情。 我創建了另一個 SSH 密鑰,這次我為 SSH 密鑰添加了一個密碼。 我也在 SSH 服務器上添加了該密鑰。 通常,當密鑰附有密碼時,Git Bash 終端應要求提供密碼以解鎖私鑰。
現在正在發生的事情是如果我通過運行命令 ssh gerrit 服務器
ssh -p 29418 <username>@<gerrit-server>
它要求我解鎖密碼,這意味着它使用正確的 ssh 密鑰並顯示 Gerrit 歡迎消息
問題是當我運行上面列出的 git 克隆命令時它不要求輸入密碼,這意味着它使用其他一些 SSH 密鑰,這就是我從 Gerrit 收到SSH_exchange_identification
錯誤的原因。 在克隆之前我需要執行任何其他步驟嗎? 我是否必須執行任何 Git 設置才能成功克隆 Git 存儲庫?
配置你的 git 設置 -> config
添加user.name
和email
(這是在您的格里特設置使用)
我也遇到了同樣的問題,它不適用於最新版本的 Git。
對於 git 版本 - 2.29.3,它對我來說效果很好。
如果您想確定正在使用哪個 ssh 密鑰,請嘗試在 .ssh 文件夾中添加一個名為config的文件,內容如下。 這將幫助您確定正在使用哪個 ssh-key -
# Gerrit
Host gerrit.*.com
host gerrit.*.com
user user_name
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.