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 rsa
Generating 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@mywinpc
The 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_rsa
2021/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页面,如下所示:

Windows下Gerrit配置SSH KEY

打开gerrit配置选项

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

Windows下Gerrit配置SSH KEY

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

Windows下Gerrit配置SSH KEY

添加ssh key

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

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

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

Windows下Gerrit配置SSH KEY

查看配置ssh key的结果

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

Windows下Gerrit配置SSH KEY


验证Gerrit的ssh key配置结果

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

Git的安装

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

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

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

C:Windowssystem32>

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

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

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

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

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

C:Userszhangsan>git --version
git version 2.32.0.windows.2

C:Userszhangsan>

Git的配置

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

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

C:Userszhangsan>git config --list
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=d:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager-core
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master

C: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 --list
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=d:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager-core
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
user.name=zhangsan
user.email=zhangsan@mywinpc.com

C:Userszhangsan>

验证gerrit的ssh链接

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

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

Windows下Gerrit配置SSH KEY

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

Windows下Gerrit配置SSH KEY

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

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

C:Userszhangsan>mkdir gerrit_projects

C:Userszhangsan>cd gerrit_projects

C: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 names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[internal.devops.com]:29888' (RSA) to the list of known hosts.
remote: Counting objects: 11108, done
remote: 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:00
close - IO is still pending on closed socket. read:1, write:0, io:000001FD5002F320

C: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_backend

C: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 .gitignore
2021/07/21  18:10             9,443 pom.xml
2021/07/21  18:10    <DIR>          script
2021/07/21  18:10    <DIR>          src
2021/07/21  18:10    <DIR>          upload
               2 个文件         11,918 字节
               5 个目录  1,081,466,880 可用字节

C:Userszhangsangerrit_projectsmy_springboot_backend>git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean

C:Userszhangsangerrit_projectsmy_springboot_backend>

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

版权声明:本文图片和内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送联系客服 举报,一经查实,本站将立刻删除,请注明出处:https://www.4kpp.com/7215.html

(0)
漫空客漫空客
上一篇 2023年4月23日
下一篇 2023年4月23日

相关推荐

  • 骑士十五世越野车(这辆越野车价值千万)

    上海作为我国最发达的城市之一,素有“魔都的称号,而上海的豪车更是遍地都是。今天我们要说的就是一辆全上海最贵的越野车,价值三辆劳斯莱斯。但就是这么豪性的一辆车,却连上海市区都进不了。…

    2023年4月23日
    1300
  • 邮政异地取款手续费(邮政异地取款手续费怎么收)

    今天给大家分享一下邮政异地取款手续费的知识,也给大家讲解一下如何收取邮政异地取款手续费。如果你碰巧解决了你现在面临的问题,别忘了关注这个网站,现在就开始! 跨区邮政取款有手续费吗?…

    投稿 2023年4月23日
    2630
  • 家人可以代办银行卡吗(家人可以代办银行卡业务吗)

    公司的银行账户类型分为银行基本户、银行一般户与银行临时户。注册公司时,必须要开立银行基本户,人们通常所说的银行开户也是指开立“银行基本户”。那么就有小伙伴问了,如果自己因为某些原因…

    2023年4月23日
    1120
  • 淘宝u站9块邮(淘宝u站中心)

    每个淘宝卖家都想提高自己店铺的淘宝排名,有源源不断的自然搜索流量。销量是影响淘宝搜索的因素之一,因此很多卖家也在为提高店铺销量做出各种各样的努力。 但是你知道哪些情况下的订单销量是…

    投稿 2023年4月23日
    2250
  • 仁者乐山智者乐水的意思(仁者乐山智者乐水的意思是什么?)

    今天给大家分享仁者乐山智者乐水的含义知识。仁者乐山智者乐水是什么意思?明确一下,如果你碰巧解决了你现在面临的问题,别忘了关注这个网站,现在就开始! “仁者乐山,智者乐水”是什么意思…

    投稿 2023年4月23日
    1110
  • 拼多多直播业务(拼多多直播业务负责人)

    【亿邦动力讯】12月5日消息,日前,拼多多店铺直播白名单功能降低申请门槛。目前,店铺粉丝数量达5w+即可申请开通直播白名单功能。 据了解,粉丝数量低于5w+的店铺,若自带女装粉丝流…

    投稿 2023年4月23日
    2560
  • 系统封装工具哪个好(新手重装系统win7教程)

    封装前准备: 软件: 1.Easy Sysprep v4.5.31.611 封装软件 2.一键运行库 1.12.2018.514 系统运行必要的组件 3.Easy Image X …

    投稿 2023年4月23日
    920
  • 2021圣诞节祝福(圣诞节祝福语)

    今天,我想和大家分享一个关于2021年圣诞节问候的问题。以下是这个问题的总结。让我们来看看。 2021年的圣诞祝福 圣诞节的起源 圣诞节是耶稣诞生的日子,即每年的12月25日(有些…

    投稿 2023年4月23日
    1240
  • 淘宝网夏季女装(淘宝网夏季女装新款)

    法式温柔的氛围感,有点法式优雅的复古连衣裙,轻盈飘逸超级温柔,整体色调都是白色的温柔纱裙,穿上就是人间富贵花,尤其是在有光和太阳下,自带柔光效果,上身就是一整个大小姐~ 整体效果 …

    2023年4月20日
    1010
  • 天界深渊击杀顺序(天界深渊刷哪个图)

    今天给大家介绍一下天元的击杀序列,以及天元刷哪些地图对应的知识点。希望对你有帮助,也别忘了收藏这个站点。 DNF刷深渊玩法顺序 毒王+瞎子+速度蓝拳(优先毒王-蓝拳-瞎子) 来自延…

    投稿 2023年4月23日
    1640

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注