Top

NSD Devops DAY04

  1. 案例1:配置git
  2. 案例2:git本地操作
  3. 案例3:使用自建gitlab服务器

1 案例1:配置git

1.1 问题

  1. 安装git版本控制软件
  2. 设置用户信息,如用户名、email等
  3. 设置默认编辑器为vim
  4. 查看用户配置

1.2 步骤

实现此案例需要按照如下步骤进行。

步骤一:安装git版本控制软件

  1. [root@localhost ~]# yum install -y git
  2. 已安装:
  3. git.x86_64 0:1.8.3.1-11.el7
  4. 作为依赖被安装:
  5. perl-Error.noarch 1:0.17020-2.el7 perl-Git.noarch 0:1.8.3.1-11.el7
  6. perl-TermReadKey.x86_64 0:2.30-20.el7
  7. 完毕!
  8. [root@localhost ~]# git –version        #查看版本
  9. git version 1.8.3.1

步骤二:设置用户信息

Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。

  1. [root@localhost ~]# git config --global user.name "Mr.Zhang"
  2. [root@localhost ~]# git config --global user.email zhangzg@tedu.cn

步骤三:设置默认编译器为vim

  1. [root@localhost ~]# git config --global core.editor vim

步骤四:查看配置

  1. [root@localhost ~]# git config --list
  2. user.name=Mr.Zhang
  3. user.email=zhangzg@tedu.cn
  4. core.editor=vim

2 案例2:git本地操作

2.1 问题

  1. 创建devops目录
  2. 为devops创建git仓库
  3. 新建文件hello.py,并将文件初始化到仓库中
  4. 修改hello.py并将其更新到仓库
  5. 从他库中删除hello.py

2.2 方案

Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以git init是使用 Git 的第一个命令。添加文件第一步使用git add是将文件添加进暂存区,第二部git commit提交更改,实际上将暂存区的所有内容提交到仓库。

2.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:创建目录初始化

此时创建了一个空仓库,可以发现当前目录下有一个隐藏的目录.git,此目录为Git来跟踪管理版本库,建议不要修改内部文件,以免Git仓库遭到破坏。

  1. [root@localhost ~]# mkdir devops
  2. [root@localhost ~]# cd devops/
  3. [root@localhost devops]# git init        #通过命令把目录变成Git可以管理的仓库
  4. 初始化空的 Git 版本库于 /root/devops/.git/
  5. [root@localhost devops]# git init devops
  6. 初始化空的 Git 版本库于 /root/devops/devops/.git/
  7. [root@localhost devops]# ls -a
  8. . .. devops .git

步骤二:新建文件hello.py,并将文件初始化到仓库中

1)添加指定文件hello.py到暂存区

  1. [root@localhost devops]# echo 'print("hello world!")' > hello.py
  2. [root@localhost devops]# git add hello.py        #将文件添加到暂存区
  3. [root@localhost devops]# git status        #查看状态
  4. # 位于分支 master
  5. #
  6. # 初始提交
  7. #
  8. # 要提交的变更:
  9. # (使用 "git rm --cached <file>..." 撤出暂存区)
  10. #
  11. #    新文件: hello.py

2)将暂存区文件初始化到仓库中

  1. [root@localhost devops]# git commit -m "初始化仓库"     #把暂存区所有内容提交到分支
  2. [master 8e6e22a] 初始化仓库
  3. 1 file changed, 1 insertion(+)
  4. create mode 100644 hello.py
  5. [root@localhost devops]# git status
  6. # 位于分支 master
  7. 无文件要提交,干净的工作区

步骤三:修改hello.py并将其更新到仓库

  1. [root@localhost devops]# echo 'print("done.")' >> hello.py
  2. [root@localhost devops]# git commit -am "向hello.py添加新行"
  3. [master 1ca03d5] 向hello.py添加新行
  4. 1 file changed, 1 insertion(+)

步骤四:从库中删除hello.py文件

要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除

  1. [root@localhost devops]# git ls-files         #查看版本库中文件
  2. hello.py
  3. niha.py
  4. [root@localhost devops]# git rm hello.py
  5. rm 'hello.py'
  6. [root@localhost devops]# git commit -m '删除hello.py'
  7. [master a37ff34] 删除hello.py
  8. 1 file changed, 2 deletions(-)
  9. delete mode 100644 hello.py

3 案例3:使用自建gitlab服务器

3.1 问题

  1. 通过docker搭建gitlab服务器
  2. 新建群组devops
  3. 新建项目core_py
  4. 新建用户,他/她在devops组中是主程序员
  5. 新用户上传版本库到gitlab
  6. 熟悉git远程操作方法

3.2 步骤

实现此案例需要按照如下步骤进行。

步骤一:通过docker搭建gitlab服务器

1)从ftp://172.40.50.116/pub/docker/images/处获取gitlab_zh.tar镜像文件,导入中文版gitlab镜像

  1. [root@localhost devops]# docker load < /path/to/gitlab_zh.tar
  2. a94e0d5a7c40: Loading layer [==================================================>] 116.5MB/116.5MB
  3. 88888b9b1b5b: Loading layer [==================================================>] 15.87kB/15.87kB
  4. 52f389ea437e: Loading layer [==================================================>] 14.85kB/14.85kB
  5. 52a7ea2bb533: Loading layer [==================================================>] 5.632kB/5.632kB
  6. db584c622b50: Loading layer [==================================================>] 3.072kB/3.072kB
  7. 62786ff6a243: Loading layer [==================================================>] 75.85MB/75.85MB
  8. 71bc04f4b7c7: Loading layer [==================================================>] 2.048kB/2.048kB
  9. 26e083d332d8: Loading layer [==================================================>] 2.048kB/2.048kB
  10. 2c02e58e96b8: Loading layer [==================================================>] 2.048kB/2.048kB
  11. 589c7a23de2a: Loading layer [==================================================>] 15.87kB/15.87kB
  12. 44474d2cdcd1: Loading layer [==================================================>] 1.359GB/1.359GB
  13. 41c94e16b901: Loading layer [==================================================>] 16.78MB/16.78MB
  14. 04cafa6a1534: Loading layer [==================================================>] 160MB/160MB
  15. Loaded image: gitlab_zh:latest

2)将物理主机ssh端口改为2022后,输入如下命令起动容器:

  1. [root@localhost devops]# docker run -d -h gitlab --name gitlab -p 443:443 -p 80:80 -p 22:22 --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data gitlab_zh:latest
  2. b9dc65e0def51a4d09d2a597b2b929490e972a34f3de993439d2f7cc22039b77
  3. 此时端口成功启动

步骤二:新建群组

1)在浏览器地址栏中输入启动容器ip地址即可登录GitLab的界面,第一次登录使用的用户名为root,首次登录会强制用户修改密码。密码修改成功后,输入新密码进行登录,如图-6所示:

图-1

2)进入网站后点击菜单栏-工具图标打开管理区域,创建群组,使用群组管理项目和成员,如图-7、图-8所示:

图-2

图-3

步骤三:在Gitlab主页中新建一个项目

显示如图-9所示:

图-4

步骤四:在Gitlab主页中新建一个用户

1)在Gitlab主页中新建一个用户,如图-10所示:

图-5

2)设置账号基本信息,其他均可为默认,如图-11所示:

图-6

3)创建用户后,再次编辑可设置密码,如图-12所示:

图-7

4)root用户将新用户加入组中,点击devops进入群组,设置管理权限,在群组中添加成员并设置新成员为“主程序员”,如图-13、图-14、图-15所示:

图-8

图-9

图-10

5)在终端中输入ssh-keygen命令,一路enter,可以生成缺省的rsa方式的sshkey,将/root/.ssh/id_rsa.pub中生成的rsa公钥内容拷到gitlab中,如图-16所示,进入设置页面对ssh进行配置:

图-11

  1. SSH是一种安全协议,在你的电脑与GitLab服务器进行通信时,我们使用SSH密钥(SSH Keys)认证的方式来保证通信安全。你可以在网络上搜索到关于SSH密钥的更多介绍;下面我们重点讲解如何创建 SSH密钥,并将密钥中的公钥添加到GitLab,以便我们通过SSH协议来访问Git仓库。
  2. 显示如图-17所示:

图-12

步骤五:简单远程操作及新用户上传版本库到gitlab

1)克隆远程库代码到本地

  1. # git clone git@192.168.113.249:devops/core_py.git

2)创建一个文件

  1. # cd /root/whsir/whsir
  2. # echo "Hello" > hello.py

3)将文件添加到仓库

  1. # git add hello.py

4)提交文件到仓库,输出信息如图-18所示:

  1. # git commit -m "hello文件"

图-13

5)关联远程库

  1. # git remote add origin git@192.168.113.249:root/whsir.git

6)最后推送到gitlab上,输出信息如图-19所示:

  1. # git push origin master

图-14

本地使用git 、 git服务器应用案例相关推荐

  1. 利用github和git命令,将本地项目共享到服务器上

    一.步骤 1. 创建项目根目录 mkdir 文件夹名 2. 初始化文件夹 git init 3. 配置用户名和邮箱(第一次配置后,不需要再登录) git config user.name 名字 git ...

  2. git服务器文件同步,利用git让服务器网站与本地同步 ssh配置

    嘛,就是将服务器上的网站和本地同步. 方法1 首先是上传服务器上的网站到github仓库 git init git add . git commit -m '' 关联远程仓库,先去github上新建一 ...

  3. Ubuntu自己动手本地模拟搭建git服务器

    查看当前登录用户是谁 whoami (字母之间没有空格) 切换用户的命令为: su username 普通用户切换root sudo su 搭建git服务器 没有git先安装git 使用git之前先需 ...

  4. 在自己的服务器上搭建git仓库服务器(本地推送到远程仓库、远程仓库推送到本地)

    文章目录 Git服务器 一.安装Git 二.配置Git 1.创建Git用户 2.仓库初始化 三.使用仓库 1.本地推送到远程仓库 2.远程仓库推送到本地 总结 Git服务器 一般,我们编写项目,都会保 ...

  5. 如何将git服务器同步到本地文件夹,使用git在服务器上部署git仓库并实现提交代码时同步代码到生产环境...

    最近由于需要对正在运行的系统进行新功能添加,本来是可以通过github进行代码维护,但是由于这个项目涉及一些问题,目前还不能开源,所以只能是手动覆盖bug文件,生产环境上的代码反而是最新的了. 之前有 ...

  6. git安装和使用案例

    ##git安装和使用案例(centos6.5) git简介: Git是目前世界上最先进的分布式版本控制系统.可以将同一个文件在不同时间的修改结果保存到git仓库中,随时可以恢复到某个需要的版本进行查看 ...

  7. eclipse查看git地址_Git大文件管理:函数计算和OSS支持的Git LFS服务器

    此服务器支持Batch API和File Locking API.项目地址与文档: https://github.com/zhxxch/git-lfs-one/​github.com LFS 是个好东 ...

  8. git源码服务器搭建,树莓派3-搭建GIT代码服务器

    搭建GIT代码服务器 说明 利用树莓派为我所有的Git仓库创建了一个Git私有服务器,方便私有代码和文档的管理. 安装 安装Git服务器和必要的客户端软件 sudo apt-get install w ...

  9. 将在本地创建的Git仓库push到Git@OSC

    为什么80%的码农都做不了架构师?>>>    本人小白一个,最近刚接触Git,发现挺好用的,而且OSC还提供了免费的托管仓库,打算把自己电脑上的代码和在公司无聊时写的代码给同步到O ...

最新文章

  1. 手把手 | 教你爬下100部电影数据:R语言网页爬取入门指南
  2. 传百度要与阿里、腾讯争夺在线办公市场?“百度Hi”开放520人同时在线音视频会议
  3. 平面设计和网页设计的规则_从平面设计到用户界面:这是您应该知道的最重要的规则
  4. HTML中confirm替换,Javascript直接Confirm()函数替换
  5. linphone相关(转)
  6. jquery validate 表单验证
  7. halcon算子翻译——compose3
  8. Postman Request Payload发送请求
  9. 如何成为一名汽车软件工程师?
  10. 【3】基于深度神经网络的脑电睡眠分期方法研究(数据集分类)
  11. 打开Internet信息服务及IIS管理器
  12. Eclipse使用教程(入门级)
  13. 0ctf writeup
  14. Blog的浏览量达到1000时将发布“曾经桑海难为水之三”
  15. R和RStudio一起安装在D盘
  16. 《后端》开放平台API安全设计
  17. 综合布线设计方案的步骤
  18. Python 能说话吗?调用Windows系统自带语音合成
  19. css美化下拉框select
  20. 语音识别模块骚操作——基于LD3320的语音识别模块LD-V7——友军计划2

热门文章

  1. managed bean
  2. 三年半经验,成功拿下字节阿里网易offer
  3. 2022-8-1----Android10.0(MTK)-----修改 ro 属性
  4. 笔记:深度学习与有向无环图SVM结合用于年龄估计的局部调整
  5. spo实体关系抽取、属性抽取
  6. 2021 HTML点击跳转对应手机应用(邮箱、手机、微信、QQ)
  7. 计算机科学学院参加些什么比赛,计算机科学学院成功举办 “互联网+”大学生创新创业大赛宣讲会...
  8. PS简单运用快捷命令
  9. Reeds-Shepp曲线学习笔记及相关思考
  10. 干货分享:深度解析如何借助区块链技术解决预付式消费困境