git、coding、Jenkins、devops

1.git:开源的分布式版本控制系统。

2.coding: CODING DevOps 是腾讯云开发的一站式软件研发管理协作平台,提供 Git/SVN 代码托管、项目协同、测试管理、制品库、CI/CD 等一系列在线工具,帮助研发团队快速落地敏捷开发与 DevOps 开发方式,提升研发管理效率,实现研发效能升级。  -----即研发协同平台。同样能够管理代码和持续集成,以及用例管理。   和Microsoft Azure Devops类似。  

3.jenkins:主要用于代码自动化管理。

关系:​​​​​​​git、coding、Jenkins、devops_第1张图片

 

 在远程仓库(coding、github……)中创建一个项目,并获得克隆的https。

再在项目的创建地址(目录)下,右键选择GIT Bash Here(GIT CMD,类似于Windows命令;GIT Bash,类似于Linux命令)

再在python中,打开项目的创建目录,里面写入代码。之后再使用GIT命令将代码上传到远程仓库里面。

最后在Jenkins中配置,下载插件,设置token;在coding的hookservice中传入含有token的地址。(钩子),实现自动构建。

git的基本命令:

未事先创建git:

git init:进入到某个目录下,执行如下命令,就能够在该目录中创建 git 项目仓库。创建一个空的项目仓库,即没有提交记录的项目仓库。

git remote add :在 git_url 的地址中创建一个名为 git_name 的远端仓库

git clone :从原本已经存在的远端仓库中,下载和创建为本地仓库。(和git pull origin master……类似)

git remote -v  查看是否连接仓库

git remote  add origin 仓库地址(coding中克隆的https)   远程连接仓库地址

git status(如果是绿色,则说明代码放到了本地的缓存区;如果是红色,则说明没有)

git add .  如果是红色,则用此命令,将代码放到缓存区

git commit -m "备注信息"  将代码加上备注上传到本地仓库---如果报错: Changes not staged for commit: 和 untracked files:  no changes added to commit ;  则用命令:git commit -am "备注信息"

git push origin master(master分支,看具体上传到哪个分支) 将代码上传到远程仓库的master分支中

(git push origin master -f:强制提交)

git pull origin master  将代码或文件从远程仓库的master分支中拉取到本地

git的其他命令:

git config --global user.email "项目提交者的邮箱"   #全局设置项目提交者的邮箱

git config --global user.name "项目提交者的名字"   #全局设置项目提交者的姓名

git log:查看详细的log信息  (可以看到过往提交的记录token)

git reflog:查看简要的log信息

git reset --hard 过往记录token的前几位 : 恢复到之前的版本1

在Linux系统中安装最新版的jenkins(依赖于java语言,因此要配置jdk)

Jenkins配置中需要注意的点:

(1)安装openjdk(openjdk与jdk最大的区别就是openjdk是开源的):

详细参考:Linux——如何在linux中手动安装openjdk_夏洛XIALUO的博客-CSDN博客_linux安装openjdk

(2)安装jenkins:

1.1先创建一个shell文件:touch install_jenkins.sh

1.2在shell文件中编辑写入执行:代码

#!/bin/bash  
#this is a shell for install jenkins



echo --------------------开始安装jenkins的stable版本----------

  
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null



echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
    https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
    /etc/apt/sources.list.d/jenkins.list > /dev/null



sudo apt-get update
sudo apt-get install -y fontconfig openjdk-11-jre
sudo apt-get install -y jenkins



echo "----启动Jenkins----"
sudo /etc/init.d/jenkins start  

echo ------安装完毕---------

echo -------下面显示的是jenkins安装口令,请将口令复制到浏览器中。--------

#./jenkins_key.sh


echo "-----modity /ect/sudoers that add some setting of user jenkins----"
#sudo chmod 775 /ect/sudoers 

sudo echo " jenkins ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
sudo . /etc/sudoers



sudo chown -R jenkins:jenkins /var/lib/jenkins/

sudo cat /var/lib/jenkins/secrets/initialAdminPassword


echo "启动Jenkins"


echo "请浏览器访问:http://124.223.77.184:8080   进行jenkins秘钥填写"


echo ------全部安装完成----------- 


解释:

git、coding、Jenkins、devops_第2张图片

 解读一些linux命令:

wget + 压缩包资源下载网址    #获取压缩包资源

sudo +linux其他命令    #用超管权限执行命令

apt-get   apt-get 命令适用于 deb 包管理式的 Linux 操作系统(Debian、Ubuntu等),主要用于自动从互联网软件仓库中搜索、下载、安装、升级、卸载软件或操作系统。和python pip类似。

apt-get update   #更新安装源(Source)

apt-get install PackageName  # 普通安装   -y:yes,不需要询问下载

其他apt-get命令:

Linux: 软件包管理工具 apt-get 命令(Debian/Ubuntu)_xietansheng的博客-CSDN博客_apt-get

查看端口是否被占用:netstat -anp|grep PID;       lsof -i: PID  

lsof:list of file

ll = ls -aLF

shell文件中(以sh结尾的文件):source 文件名=./ 文件名=sh 文件

chown -R ubuntu:ubuntu 文件名    修改文件的所属权,“:”前面是组名,后面是个人名

file 文件名:查看文件内容是否为空

vim 和vi的区别:vim是vi的plus版本。vi的三种模式:命令模式、文本输入模式、和末行模式。

(按esc键进入命令模式;按i、a进入文本输入模式,按:进入末行)

如何加行号:按esc键进入命令模式,输入:set number,按回车键,即可出现行号;

                      输入:set nuno,按回车键,行号消失。

dos2unix install_jenkins.sh:格式化,用于纯文本在unix、dos或mac之间格式的转化。

reboot:断开连接,重启。

power off:立即关机

取别名:cd /root, ls -a,找到隐藏文件.bashrc,在some more ls alias下面添加alias,最后再重启:source .bashrc

查看服务器性能:htop

mem:内存,swap:缓存区。

whereis=grep:查找文件

pwd:查看当前路径

jenkins配置:下载完成后,输入linux中生成的密钥。

路径参考:

3.jenkins(webhook)的自动部署 · 语雀

注意点:1.这里Jenkins插件webhook设置的token类似于一个钩子,和coding的service hook相关联。postman只是在模拟他们之间的原理。

设置token:类似于对口令。Jenkins中的token和coding的service hook的url中的token一致,代码上传后,自动集成运行;token不一致,就无法自动集成。

2.Jenkins中一些常用组件的功能:

下载插件:Dashboard--系统管理--插件管理

项目--立即构建---执行代码

配置--配置源代码&环境变量(包括代码库之类的)

你可能感兴趣的:(devops,git,jenkins)