【实测】用土话让你明白如何做测试平台的持续部署和集成 - 2【gitlab到底咋配置】

简介: 【实测】用土话让你明白如何做测试平台的持续部署和集成 - 2【gitlab到底咋配置】

小白只要把这个新系列看完,对gitlab再也不会迷茫了。


   好的,继上文我们明白要用gitlab来当做代码的远程仓库。

   可是,在你的学习生涯中,一定有一段技术是一提起来就头疼的,就是gitlab如何设置ssh免密,这块我们很多人第一次学的都是按照网上的一些教程,一句一句执行,有的各种报错,失败,而且也完全不明白每句的意思,请你试着回想那些教程。结合本文的思路,就会瞬间秒懂。


   让我们仍然用带着问题的方式来探索这个过程吧~


   问题:gitlab作为远程仓库,到底有啥用?


   答:gitlab相当于你代码的最终存储地,你代码放本地多危险,说丢就丢。而且要是好几个人共同开发这一个项目,那总该有个最终集合的地方,那个地方就是gitlab,它是一个远程仓库,我们平时在浏览器打开看到的只是它的web控制页面。最终gitlab把代码复制到你的服务器上。

   过程就是:本地电脑代码 ----->  gitlab ------> 你的服务器  

   好,那么我们面临的俩个大难题就是,如何把你本地的代码上传到gitlab,和如何从你的服务器上获取到gitlab的代码。


   问题:如何把本地代码上传到gitlab,如何在服务器上获取到gitlab代码。


   答:这个问题大家不要操心,其实就是来个命令,一个git push上传,一个是git pull下载。仅此而已。当然,具体使用中,git push需要一组命令[git add . / git commit -m '.' / git push]


   问题 :gitlab的远程仓库要怎么创建,怎么克隆?


   答:正常来说,你的开发顺序应该是,先在gitlab上创建一个空项目,然后把这个空项目克隆到本地电脑上,在把你之前的代码手动复制到这个本地电脑的空项目内,以后你就在这个本地电脑的空项目开发了。所谓克隆,其实就是命令:git clone。其实就是复制,只是首次复制,叫克隆。


   问题:服务器也要克隆gitlab上的远程代码项目么?


   答:这不是当然的么,服务器首次,也是需要把gitlab的代码复制到服务器上,咱们的目的就是要把代码弄到服务器上啊。而这个首次复制,也叫克隆,也是 : git clone命令。本质上与你本地和gitlab的交互没啥区别。


   问题:gitlab上是随便可以进进出出的么?随便一台机器都可以直接上传代码和下载?


   答:当然不是随便的,主流都是ssh来链接,通俗来说,就是具体的电脑要把自己的某个独一无二的标识,放到gitlab内特殊位置保存。这样这台电脑才有权限对gitlab内的项目进行上传,下载,包括上面的克隆。


   问题:gitlab的ssh到底怎配置呢?网上的教程好繁琐呀~


   答:上一个问题所说的,每太电脑的独一无二的标识,其实就是公钥,也就是隐藏在~/.ssh/id_rsa.pub的文件内容。

image.png

注意,这个文件的位置是在~ 下,~就是你当前电脑的用户名的专属路径。也就是说,每个电脑的用户都有一个自己的.ssh文件夹和内部的公钥私钥等文件。而你想把这个一大堆字符串粘贴到gitlab上保存,前提是gitlab也是要你的账号登录后才能设置保存成功。除了你本人,谁也配置不了这个,所以很安全。


   问题:id_rsa.pub文件没有怎么办?

   

   答:很多教程要么是直接让你新建,要么是直接用。其实,这个文件本来是没有的,需要你手动去通过一些命令去创建,基本是如下命令:

ssh -keygen -t rsa -C 你的gitlab邮箱

然后按照提示,一路回车或者按y就可以成功。成功后就自动生成了那个.ssh文件夹和id_rsa.pub文件。注意这个.ssh文件夹开头是个点,这意思是文件夹是默认隐藏的,你可以直接cd 来进入,也可以通过ls -a来看到它。


   问题:id_rsa.pub的内容复制到哪?


   用你的账号打开gitlab,然后点击右上角个人头像,有个设置edit字样的。进入设置后,左边菜单有个ssh字样的,点进去把id_rsa.pub的内容复制到这个多行文本框里,然后点下面的Add按钮。很多网上的教程和截图都是旧的,因为gitlab也是总在更新的。大家要理解这个原理,之后这怎么变都不怕:

image.png

   经过上述操作后,你的电脑就可以直接对这个gitlab内的项目进行克隆/上传/下载等操作了。

相关文章
|
1月前
|
数据管理 测试技术 持续交付
深入理解软件测试中的持续集成与持续部署
在现代软件开发实践中,持续集成(Continuous Integration, CI)和持续部署(Continuous Deployment, CD)是提升开发效率、保障产品质量的关键环节。本文将深入探讨CI/CD的概念、实施策略及其在软件测试中的作用,旨在为读者揭示如何通过有效的自动化流程来优化测试活动,减少人为错误,并实现快速反馈和迭代。文章还将讨论面临的挑战和可能的解决方案,以期帮助团队构建更加健壮的开发和测试环境。
|
1月前
|
敏捷开发 运维 测试技术
探索自动化测试在持续集成环境中的关键作用
【2月更文挑战第18天】 随着敏捷开发和DevOps文化的普及,持续集成(CI)已成为软件开发过程中不可或缺的组成部分。本文将深入探讨自动化测试在持续集成环境中的重要性,分析其如何提高软件交付速度、保障质量并减少人工干预。通过对现代软件工程实践中自动化测试策略的剖析,揭示了其在维护高效率和高质量软件产品中的核心地位。
31 7
|
4天前
|
Linux 网络安全 开发工具
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透
|
Java 测试技术
Java 中的单元测试和集成测试策略
【4月更文挑战第19天】本文探讨了Java开发中的单元测试和集成测试。单元测试专注于单一类或方法的功能验证,使用测试框架如JUnit,强调独立性、高覆盖率和及时更新测试用例。集成测试则验证模块间交互,通过逐步集成或模拟对象来检测系统整体功能。两者相辅相成,确保软件质量和降低修复成本。
|
10天前
|
分布式计算 Hadoop 测试技术
Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
【4月更文挑战第5天】Hadoop【基础知识 05】【HDFS的JavaAPI】(集成及测试)
38 8
|
11天前
|
缓存 自动驾驶 测试技术
如何进行有效的Apollo测试:单元测试和集成测试指南
如何进行有效的Apollo测试:单元测试和集成测试指南
40 13
|
11天前
无缝构建与部署:GitLab CI/CD首秀的实战攻略
无缝构建与部署:GitLab CI/CD首秀的实战攻略
22 0
无缝构建与部署:GitLab CI/CD首秀的实战攻略
|
1月前
|
JavaScript Go 项目管理
云效常见问题之使用gitlab仓库将代码合并评审环节集成到云效如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
95 1
|
1月前
|
敏捷开发 监控 Devops
深入理解软件测试中的持续集成与持续部署(CI/CD)
【2月更文挑战第30天】 在快速发展的软件开发周期中,持续集成(Continuous Integration, CI)与持续部署(Continuous Deployment, CD)已成为确保产品质量和加快交付速度的重要实践。本文旨在探讨CI/CD在软件测试领域中的应用与挑战,解析其对测试流程、自动化及团队协作的影响,并分享最佳实践案例。通过深入了解CI/CD,测试人员可以更好地适应敏捷开发模式,提高测试效率,降低发布风险。
27 1
|
1月前
|
Devops 开发工具 数据安全/隐私保护
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
Docker Swarm总结+CI/CD Devops、gitlab、sonarqube以及harbor的安装集成配置(3/5)
52 0

热门文章

最新文章