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

相关文章
|
12天前
|
监控 前端开发 测试技术
如何实现前端工程化的持续集成和持续部署?
通过以上步骤,可以建立一套完整的前端工程化 CI/CD 流程,实现前端代码从开发、测试、构建到部署的全自动化,提高开发效率、保证代码质量,快速响应用户需求和市场变化。
|
23天前
|
jenkins Devops Java
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第27天】在快速发展的软件开发领域,DevOps实践日益重要。Jenkins作为一款流行的开源自动化服务器,在持续集成(CI)和持续部署(CD)中扮演关键角色。本文通过案例分析,探讨Jenkins在Java项目中的应用,展示其自动化构建、测试和部署的能力,提高开发效率和软件质量。
44 2
|
7天前
|
运维 Devops jenkins
DevOps实践:持续集成与持续部署在现代软件开发中的作用
【10月更文挑战第42天】在快节奏的软件开发世界里,DevOps已经成为一种提升效率、确保质量和加速交付的重要方法。本文将深入探讨DevOps的核心组成部分—持续集成(CI)和持续部署(CD)—并展示它们如何通过自动化流程优化开发周期。我们将从基础概念讲起,逐步过渡到实际操作,最终通过一个简单代码示例来演示这一过程。文章旨在为读者提供清晰的指导,帮助他们理解和实现CI/CD流程,从而在软件开发领域取得竞争优势。
|
8天前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
10天前
|
运维 jenkins Java
Jenkins在持续集成与持续部署中的价值
Jenkins在持续集成与持续部署中的价值
|
13天前
|
敏捷开发 Devops 测试技术
自动化测试中的持续集成与持续部署
在现代软件开发实践中,自动化测试是确保软件质量和快速迭代的关键。本文将探讨自动化测试如何与持续集成(CI)和持续部署(CD)流程相结合,以提高开发效率和软件质量。我们将分析CI/CD管道中自动化测试的最佳实践,以及如何克服实施过程中的挑战。
35 6
|
15天前
|
存储 监控 Devops
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
|
17天前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
78 1
|
22天前
|
jenkins Java 持续交付
软件开发自动化程度的不断提高,持续集成(CI)和持续部署(CD)成为现代软件开发的重要组成部分
随着软件开发自动化程度的不断提高,持续集成(CI)和持续部署(CD)成为现代软件开发的重要组成部分。本文以电商公司为例,介绍如何使用 Jenkins 自动发布 Java 代码,包括安装配置、构建脚本编写及自动化部署等步骤,帮助团队实现高效稳定的软件交付。
29 3
|
24天前
|
jenkins Devops 测试技术
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第26天】随着DevOps理念的普及,Jenkins作为一款开源自动化服务器,在持续集成(CI)与持续部署(CD)中发挥重要作用。本文通过某中型互联网企业的实际案例,展示了Jenkins如何通过自动化构建、持续集成和持续部署,显著提升开发效率、代码质量和软件交付速度,帮助企业解决传统手工操作带来的低效和错误问题。
47 4
下一篇
无影云桌面