日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 综合教程 >内容正文

综合教程

gitllab访问报错:Permission denied (publickey). 以及后续测试

發(fā)布時(shí)間:2024/1/3 综合教程 36 生活家
生活随笔 收集整理的這篇文章主要介紹了 gitllab访问报错:Permission denied (publickey). 以及后续测试 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

主要測(cè)試了各方式clone的情況:

1. 安裝gitlab,配置ip:port。

常規(guī)步驟:

yum install -y curl policycoreutils-python openssh-server
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm
rpm -ivh gitlab-ce-10.2.2-ce.0.el7.x86_64.rpm
vim /etc/gitlab/gitlab.rb   #修改nginx['listen_addresses']、nginx['listen_port']、external_url 3項(xiàng)
gitlab-ctl restart
gitlab-ctl reconfigure

然后在gitlab網(wǎng)頁(yè)端注冊(cè)賬號(hào)

2. gitlab注冊(cè)的賬號(hào)和linux賬號(hào)關(guān)系,git賬號(hào)

linux賬號(hào)和gitlab內(nèi)賬號(hào)沒(méi)有關(guān)系。安裝完gitlab之后,linux系統(tǒng)會(huì)創(chuàng)建一個(gè)叫g(shù)it的賬號(hào),之后對(duì)project的上傳下拉操作都是通過(guò)git賬號(hào)完成。

3. 注冊(cè)ssh key之后,以及使用ssh clone的過(guò)程。訪問(wèn)受linux sshd內(nèi)ssh認(rèn)證配置的影響。

在gitlab上注冊(cè)了ssh key之后,背后實(shí)際上gitlab會(huì)把注冊(cè)的key寫入git賬號(hào)的~/.ssh/authorized_keys文件。這樣,每次git clone/push/pull操作時(shí),都是先ssh到linux的git賬號(hào),再進(jìn)行后續(xù)操作。

因?yàn)間it的ssh方式會(huì)通過(guò)sshd服務(wù),所以在linux上修改了sshd配置會(huì)影響git的使用。比如修改了ssh端口,則git也需要配置響應(yīng)端口(很多時(shí)候會(huì)修改ssh的默認(rèn)端口,從22改為一個(gè)大數(shù)字)。

一般情況下,git ssh認(rèn)證有公鑰私鑰就可以正常操作。但有的情況下,linux端會(huì)開(kāi)雙重認(rèn)證AuthenticationMethods publickey,password。這個(gè)時(shí)候再git clone git@****.git 的時(shí)候,會(huì)需要輸入git賬號(hào)自身的密碼(可以想象成先登錄到linux的git賬號(hào))。如果想要順利進(jìn)行,一般要通過(guò)root賬號(hào)修改下git賬號(hào)的密碼,再通過(guò)驗(yàn)證。

4. git ssh clone和http clone的區(qū)別。為什么ssh clone不可以,http clone卻可以?

git ssh 和 git http是兩個(gè)相互獨(dú)立的方式。git ssh通過(guò)ssh連接,受linuxsshd配置(git賬戶)影響;git http直接通過(guò)ip:port進(jìn)行連接,不需要linux賬戶的信息,只需要在gitlab上注冊(cè)的賬號(hào)的用戶名和密碼。

所以,有時(shí)候git ssh不成功時(shí),通過(guò)ssh clone可以成功。

5. git http clone 用戶密碼。全局配置文件~/.gitconfig內(nèi)的[User].name項(xiàng)的作用。

git http每次都要輸賬號(hào)密碼,可以通過(guò)git config credential.helper 相關(guān)命令存儲(chǔ)賬號(hào)密碼。

此外,在全局配置文件~/.gitconfig內(nèi)也會(huì)有一個(gè)

[user]
name = testmm
email = ***

User項(xiàng)。這里的user.name和gitlab賬號(hào)也是相互獨(dú)立的。user.name代表的是在你提交commit時(shí),顯示的名字。比如,執(zhí)行g(shù)it lg:

[ttt1@local transfer]$ git lg
* 67ccd87 - (HEAD, origin/master, origin/HEAD, master) test123 (3 hours ago) <testmm>

這里顯示是testmm提交的修改,這不是gitlab內(nèi)賬號(hào)的名字,只是本地做的一個(gè)全局配置內(nèi)的名字。

但是在gitlab網(wǎng)頁(yè)上看到的修改者還是以gitlab內(nèi)的賬號(hào)名字出現(xiàn)的。這是個(gè)不一樣的地方。

總結(jié)

以上是生活随笔為你收集整理的gitllab访问报错:Permission denied (publickey). 以及后续测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。