gerrit和git的区别有什么(gitlab安装教程详细)

发布日期:2025-02-11 01:44:03     手机:https://m.xinb2b.cn/shenghuo/news6239.html    违规举报
核心提示:目的 检查并生成本地的ssh key 检查是否已经存在ssh key 检查生成的ssh key 登陆Gerrit配置ssh key 登录gerrit 打开gerrit配置选项 添加ssh

gerrit和git的区别有什么(gitlab安装教程详细)

目的 检查并生成本地的ssh key 检查是否已经存在ssh key 检查生成的ssh key 登陆Gerrit配置ssh key 登录gerrit 打开gerrit配置选项 添加ssh key 查看配置ssh key的结果 验证Gerrit的ssh key配置结果 Git的安装 Git的配置 验证gerrit的ssh链接 结束语 目的

本文的目的是指导在Windows操作系统下面,如何配置通过ssh key来访问gerrit服务器。

检查并生成本地的ssh key 检查是否已经存在ssh key

在生成本地的ssh key之前,我们需要首先检查一下自己本地是否已经生成过ssh key,如果已经生成过,则不需要再次生成,可以直接使用已经存在的ssh key,如果没生成过ssh key,则需要生成新的ssh key。

具体检查是否生成ssh key的方法如下,以管理员的方式运行powershell程序,然后再里面输入如下命令,**注意:**如果没有powershell程序,就以管理员身份运行cmd程序。

C:Windowssystem32>dir C:Userszhangsan.ssh 驱动器 C 中的卷没有标签。 卷的序列号是 E637-92C8 C:Userszhangsan 的目录找不到文件C:Windowssystem32>

通过上面的命令和输出我们可以看出本地是没有生成过ssh key的,我们可以通过如下的命令生成ssh key。

生成ssh key的命令如下。在以管理员的方式运行powershell程序,然后执行如下命令,**注意:**如果没有powershell程序,就以管理员身份运行cmd程序。

C:Windowssystem32>ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (C:Userszhangsan/.ssh/id_rsa):Created directory \'C:Userszhangsan/.ssh\'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in C:Userszhangsan/.ssh/id_rsa.Your public key has been saved in C:Userszhangsan/.ssh/id_rsa.pub.The key fingerprint is:SHA256:8tmUEwMEcYpAzq2OECpZ45PwO6yT9Y/jhg6q2DiQUwA zhangsan@mywinpcThe key\'s randomart image is:+---[RSA 2048]----+|E.o o++ ||.o o . o . ||o.= o . o ||.B.+ + ||=o* . S + ||*+.o o + . ||++=o o . ||*=..+. ||B+oooo. |+----[SHA256]-----+C:Windowssystem32> 检查生成的ssh key

使用下面的命令来检查生成的ssh key:

C:Windowssystem32>dir C:Userszhangsan.ssh 驱动器 C 中的卷没有标签。 卷的序列号是 E637-92C8 C:Userszhangsan.ssh 的目录2021/07/21 16:53 <DIR> .2021/07/21 16:53 <DIR> ..2021/07/21 16:53 1,679 id_rsa2021/07/21 16:53 398 id_rsa.pub 2 个文件 2,077 字节 2 个目录 2,809,282,560 可用字节C:Windowssystem32>

通过上面的命令和输出结果,我们可以看出,ssh key已经生成成功。

其中两个文件的含义如下:

id_rsa:私钥文件,不要轻易给别人知道这个文件内容。 id_rsa.pub:公钥文件,可以发送给他人,或配置到其他服务器上,通过自己的私钥,链接到配置在其他服务器上面的私钥来实现远程的免密码登陆访问。 登陆Gerrit配置ssh key

前面我们已经在本地准备好ssh key了,下面我把准备好的ssh key配置到我们的gerrit账号下面。

登录gerrit

使用自己的平台账号登陆gerrit的web页面,如下所示:

打开gerrit配置选项

登录成功后,如下所示,点击你的姓名选择settings菜单。

然后再次选择SSH Public Keys选项,然后再点击右侧的Add Key按钮,如下所示:

添加ssh key

查看本地的ssh key中的公钥,然后把你本地C:Userszhangsan.sshid_rsa.pub文件中的内容,如下所示:

C:Windowssystem32>more C:Userszhangsan.sshid_rsa.pubssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDj7HXYt6XPWrRpE+p3xe592fwV/EA3fMoL4CbCXbEYWTqj4ZE+621k6DgNq+RAIWu+u6aCAykmtPLCKqMxTlTeJ/hohm/bHlIXITcxuBscRNp67dpkl6kNn8IRoFJxYQbhADJwEx5nRn8qFe5BttFs+9Exs9G0bz5RDb5HJpmhDalm/8Nct5k+QrfAZ6Gzv3txgiiH5BuKf/bxuVXpTwvL+637aYDREADKOnyPang0x9aACI82q5dwPa0jqJvRGij8uwjEnXh+nmkqwZeI8ZFSCitAo8tsfhbjBKwfkV7sYmOHJnsMZRvnG0tR9QK7RXPYmlT97TYIQjEalXc5tiSL zhangsan@mywinpc

复制上面命令的输出内容,将其粘贴到下面的文本框中,然后Add按钮,如下所示:

查看配置ssh key的结果

添加完成public key之后,此时你的gerrit账号下面就配置了一个public key。

验证Gerrit的ssh key配置结果

到目前为止,我们已经把自己本地ssh key配置到了gerrit账号下面,下面我们来使用git命令来验证一下是否可以正常链接到gerrit服务器上进行代码的拉取和推送操作。

Git的安装

如果你本地还那样安装git,请参考下面的git的安装步骤,如果已经安装了git,则可以跳过git的安装步骤。

验证是否安装了git的方式通过如下命令:

C:Windowssystem32>git\'git\' 不是内部或外部命令,也不是可运行的程序或批处理文件。C:Windowssystem32>

通过上面的命令和输出结果,我们可以得知,本地目前是没有安装Git组件的。

在Windows上安装Git很简单,有以下几种安装方法,推荐使用第一种方式:

    官方版本可以在 Git 官方网站下载。 打开 https://git-scm.com/download/win,下载会自动开始。 要注意这是一个名为 Git for Windows 的项目(也叫做 msysGit),和 Git 是分别独立的项目;更多信息请访问 http://msysgit.github.io/。 要进行自动安装,你可以使用 Git Chocolatey 包。 注意 Chocolatey 包是由社区维护的。 另一个简单的方法是安装 GitHub Desktop。 该安装程序包含图形化和命令行版本的 Git。 它也能支持 Powershell,提供了稳定的凭证缓存和健全的换行设置。 稍后我们会对这方面有更多了解,现在只要一句话就够了,这些都是你所需要的。 你可以在 GitHub for Windows 网站下载,网址为 GitHub Desktop 网站。

下载完成之后,右键以管理员的身份运行.exe文件,一路下一步即可完成Git的安装。

安装完成git之后,搜索找到git cmd程序,这个是在安装完成Git之后才用的命令行程序,右键以管理员身份运行git cmd程序,然后通过如下命令来验证是否安装成功。

C:Userszhangsan>git --versiongit version 2.32.0.windows.2C:Userszhangsan> Git的配置

上面我们完成了git的安装,接下来我们在使用git之前,需要对git简单的配置一下,这样在外面提交代码的时候。

在配置之前,可优先看一下是否已经配置了对应的参数,使用如下命令查看:

C:Userszhangsan>git config --listdiff.astextplain.textconv=astextplainfilter.lfs.clean=git-lfs clean -- %ffilter.lfs.smudge=git-lfs smudge -- %ffilter.lfs.process=git-lfs filter-processfilter.lfs.required=truehttp.sslbackend=opensslhttp.sslcainfo=d:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crtcore.autocrlf=truecore.fscache=truecore.symlinks=falsepull.rebase=falsecredential.helper=manager-corecredential.https://dev.azure.com.usehttppath=trueinit.defaultbranch=masterC:Userszhangsan>

通过上面命令的输出结果来看,在本地电脑上还没有配置git用户名和邮箱的全局参数。

请参考下面的命令来进行配置,需要注意的是,你需要把后面的参数换成你自己的姓名全拼音和对应的邮箱地址:

C:Userszhangsan>git config --global user.name "zhangsan"C:Userszhangsan>git config --global user.email "zhangsan@mywinpc.com"C:Userszhangsan>

git全局参数设置后的结果如下:

C:Userszhangsan>git config --listdiff.astextplain.textconv=astextplainfilter.lfs.clean=git-lfs clean -- %ffilter.lfs.smudge=git-lfs smudge -- %ffilter.lfs.process=git-lfs filter-processfilter.lfs.required=truehttp.sslbackend=opensslhttp.sslcainfo=d:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crtcore.autocrlf=truecore.fscache=truecore.symlinks=falsepull.rebase=falsecredential.helper=manager-corecredential.https://dev.azure.com.usehttppath=trueinit.defaultbranch=masteruser.name=zhangsanuser.email=zhangsan@mywinpc.comC:Userszhangsan> 验证gerrit的ssh链接

git安装并且配置好之后,现在开始尝试通过外面配置的ssh key免密链接到gerrit。

登陆gerrit的web页面,找到我们要clone的项目,具体路径为:Projects->List->选择你能访问的项目

进入下面的页面,按步骤依次点击下面的链接:

进入自己的git cmd命令行窗口,在自己用户的目录下,新建一个文件夹,用于存放gerrit的项目,然后进入到这个文件夹下面,粘贴上面复制的命令,然后回车执行。

如果弹出提示是否要继续连接,输入yes后回车,继续链接。

C:Userszhangsan>mkdir gerrit_projectsC:Userszhangsan>cd gerrit_projectsC:Userszhangsangerrit_projects>git clone ssh://zhangsan@internal.devops.com:29888/my_springboot_backend && scp -p -P 29888 zhangsan@internal.devops.com:hooks/commit-msg my_springboot_backend/.git/hooks/Cloning into \'my_springboot_backend\'...The authenticity of host \'[internal.devops.com]:29888 ([10.10.10.11]:29888)\' can\'t be established.RSA key fingerprint is SHA256:++v37ZAKWBgE7hhrZC1teajoQqpdIBbMOnhSJyoACMc.This key is not known by any other namesAre you sure you want to continue connecting (yes/no/[fingerprint])? yesWarning: Permanently added \'[internal.devops.com]:29888\' (RSA) to the list of known hosts.remote: Counting objects: 11108, doneremote: Finding sources: 100% (11108/11108)remote: Total 11108 (delta 5684), reused 10779 (delta 5684)Receiving objects: 100% (11108/11108), 36.92 MiB | 3.30 MiB/s, done.Resolving deltas: 100% (5684/5684), done.Updating files: 100% (707/707), done.Warning: Permanently added the RSA host key for IP address \'[10.10.10.11]:29888\' to the list of known hosts.commit-msg 100% 4682 41.8KB/s 00:00close - IO is still pending on closed socket. read:1, write:0, io:000001FD5002F320C:Userszhangsangerrit_projects>dir 驱动器 C 中的卷没有标签。 卷的序列号是 E637-92C8 C:Userszhangsangerrit_projects 的目录2021/07/21 18:10 <DIR> .2021/07/21 18:10 <DIR> ..2021/07/21 18:10 <DIR> my_springboot_backend 0 个文件 0 字节 3 个目录 1,081,532,416 可用字节C:Userszhangsangerrit_projects>cd my_springboot_backendC:Userszhangsangerrit_projectsmy_springboot_backend>dir 驱动器 C 中的卷没有标签。 卷的序列号是 E637-92C8 C:Userszhangsangerrit_projectsmy_springboot_backend 的目录2021/07/21 18:10 <DIR> .2021/07/21 18:10 <DIR> ..2021/07/21 18:10 2,475 .gitignore2021/07/21 18:10 9,443 pom.xml2021/07/21 18:10 <DIR> script2021/07/21 18:10 <DIR> src2021/07/21 18:10 <DIR> upload 2 个文件 11,918 字节 5 个目录 1,081,466,880 可用字节C:Userszhangsangerrit_projectsmy_springboot_backend>git statusOn branch masterYour branch is up to date with \'origin/master\'.nothing to commit, working tree cleanC:Userszhangsangerrit_projectsmy_springboot_backend>

通过上面的命令和输出,我们可以已经可以成功地从gerrit上面克隆代码仓库到本地来。

 
 
本文地址:https://xinb2b.cn/shenghuo/news6239.html,转载请注明出处。

推荐图文
推荐生活健康
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  违规举报  |  蜀ICP备18010318号-4  |  百度地图  | 
Processed in 0.370 second(s), 77 queries, Memory 0.53 M