【实测】用土话让你明白如何做测试平台的持续部署和集成 - 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内的项目进行克隆/上传/下载等操作了。

相关文章
|
4月前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
3112 166
|
7月前
|
XML jenkins 机器人
JMeter+Ant+Jenkins实现接口自动化测试持续集成
本文介绍了如何使用Ant生成JMeter接口测试报告,并集成到Jenkins中实现自动化测试。内容涵盖Ant与JMeter环境配置、build.xml文件设置、测试执行及报告生成,同时包括Jenkins插件安装、项目配置和钉钉消息通知的集成,帮助实现持续测试与结果可视化。
951 0
|
8月前
|
运维 安全 关系型数据库
【产品升级】Dataphin V5.1版本发布:跨云数据集成、指标管理、平台运维带来重大更新!
V5.1版本新增多项功能:对接AWS生态(支持Amazon EMR、Redshift等),强化研发技术支撑(如API认证升级、全量任务隔离),完善运营消费链路(新增业务指标管理、指标关系图),提升平台综合能力(自定义菜单、缩短升级停机时间)。这些功能助力企业实现高效数据治理与分析,未来还将拓展智能化与国际化支持。
468 0
|
5月前
|
Java 测试技术 API
自动化测试工具集成及实践
自动化测试用例的覆盖度及关键点最佳实践、自动化测试工具、集成方法、自动化脚本编写等(兼容多语言(Java、Python、Go、C++、C#等)、多框架(Spring、React、Vue等))
293 6
|
5月前
|
人工智能 安全 API
Dify平台集成安全护栏最佳实践
Dify平台提供低代码构建AI大模型应用的解决方案,支持云服务与私有化部署。本文介绍了在工作流和Agent中集成安全护栏的最佳实践,包括插件和扩展API两种方案。插件方式适用于工作流,一键安装实现输入输出防控;扩展API方式适用于Agent和工作流私有化部署场景,通过本地服务适配安全护栏API。文中还详细说明了操作步骤、前提条件及常见问题处理方法,帮助用户快速实现内容安全控制。
|
7月前
|
人工智能 搜索推荐 API
AI-Compass DeepSearch深度搜索生态:集成阿里ZeroSearch、字节DeerFlow、MindSearch等前沿平台,实现超越传统关键词匹配的智能信息检索革命
AI-Compass DeepSearch深度搜索生态:集成阿里ZeroSearch、字节DeerFlow、MindSearch等前沿平台,实现超越传统关键词匹配的智能信息检索革命
AI-Compass DeepSearch深度搜索生态:集成阿里ZeroSearch、字节DeerFlow、MindSearch等前沿平台,实现超越传统关键词匹配的智能信息检索革命
|
6月前
|
供应链 监控 搜索推荐
35页PPT|零售行业自助数据分析方法论:指标体系构建平台集成、会员与商品精细化运营实践
在零售行业环境剧变的背景下,传统“人找货”模式正被“货找人”取代。消费者需求日益个性化,购买路径多元化,企业亟需构建统一的指标体系,借助BI平台实现数据驱动的精细化运营。本文从指标体系构建、平台集成到会员与商品运营实践,系统梳理零售经营分析的方法论,助力企业实现敏捷决策与业务闭环。
35页PPT|零售行业自助数据分析方法论:指标体系构建平台集成、会员与商品精细化运营实践
|
7月前
|
机器学习/深度学习 人工智能 监控
CI/CD与模型监控平台集成MLOps系统实现的全面路径
MLOps是机器学习模型在生产环境中持续优化、部署和维护的关键。通过CI/CD流水线和模型监控平台的结合,可以大大提高模型开发和运维的效率,实现高效、稳定的模型服务。随着AI技术的快速发展,MLOps将在企业级AI应用中发挥越来越重要的作用。
CI/CD与模型监控平台集成MLOps系统实现的全面路径
|
7月前
|
Web App开发 开发框架 .NET
Playwright 自动化测试系列(6)| 第三阶段:测试框架集成​指南:参数化测试 + 多浏览器并行执行
Pytest 与 Playwright 集成可提升自动化测试效率,支持参数化测试、多浏览器并行执行及统一报告生成。通过数据驱动、Fixture 管理和并行优化,显著增强测试覆盖率与执行速度,适用于复杂 Web 应用测试场景。
|
8月前
|
Ubuntu 安全 数据安全/隐私保护
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
562 12

热门文章

最新文章