云计算day13-Git 版本控制系统、jenkins安装(笔记),大数据开发大厂高级面试题灵魂100问

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
img

正文

git checkout dev01

#合并分支
git merge master

#在开发分支上合并主分支
git merge master -m ‘注释’

#切回主分支
git checkout master

#在主分支次合并开发分支
git merge dev01 -m ‘注释’


#### 8. git标签管理



> 
> 标签就是给commit起一个别名,容易记忆
> 
> 
> 



#添加标签
git log --oneline
git tag v1.2 ----> 给当前版本打标签
git tag -a v1.0 -m ‘注释,优化了修复了什么’ <commit的ID>

#删除标签
git tag -d v1.2

[root@k8s-node2 demo]# git log --oneline
b8e21cc add test.txt
9d5ab15 add test.txt
382f080 add test.txt
ff6047d add file6 file7
b693580 add file6 file7
58bea1a add three file
fe9e8c2 add two file
[root@k8s-node2 demo]# git tag
[root@k8s-node2 demo]# git tag v1.2
[root@k8s-node2 demo]# git tag
v1.2
[root@k8s-node2 demo]# git show v1.2
commit b8e21cc519dfd918ee880831e37585afcdf73410
Author: oldqiang 296917342@qq.com
Date: Mon Sep 23 12:03:35 2019 +0800

add test.txt

diff --git a/demo/test.txt b/demo/test.txt
index 69f66d3…d99f9f0 100644
— a/demo/test.txt
+++ b/demo/test.txt
@@ -1,3 +1,3 @@
11111
-aaaaa
+22222
33333
[root@k8s-node2 demo]# git tag -a v1.0 -m ‘v1.0 add 后裔’ fe9e8c2
[root@k8s-node2 demo]# git tag
v1.0
v1.2
[root@k8s-node2 demo]# git show v1.0
tag v1.0
Tagger: oldqiang 296917342@qq.com
Date: Mon Sep 23 12:18:45 2019 +0800

v1.0 add 后裔

commit fe9e8c25cfb61eb63da6681dc09d054cd5739243
Author: oldqiang 296917342@qq.com
Date: Mon Sep 23 10:44:54 2019 +0800

add two file

diff --git a/file1 b/file1
new file mode 100644
index 0000000…5721413
— /dev/null
+++ b/file1
@@ -0,0 +1 @@
+423



> 
> **`扩展`**  
>  [Git 打补丁-- patch 和 diff 的使用]( )  
>  diff  
>  patch 打补丁,创建补丁,卸载补丁
> 
> 
> 



> 
> **`git克隆 码云网站复制项目链接`**  
>  [外链图片转存失败(img-ZksPvapA-1569213856173)(https://upload-images.jianshu.io/upload\_images/16952149-dc299a71ec5aeca1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
> 
> 
> 


#### 9. git远程仓库gitee


![](https://img-blog.csdnimg.cn/20190923151112881.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)![](https://img-blog.csdnimg.cn/20190923155808814.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)



ssh-keygen -t rsa
cat /root/.ssh/id_rsa.pub
cd /root/demo/
ll
git remote add origin git@gitee.com:linuxcx/linux.git
git push -u origin master


#### 10. gitlab安装



#上传gitlab-ce-11.9.11-ce.0.el7.x86_64.rpm到当前目录

echo “192.168.37.202 mirrors.aliyun.com” >>/etc/hosts
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum localinstall gitlab-ce-11.9.11-ce.0.el7.x86_64.rpm -y

vim /etc/gitlab/gitlab.rb
#设置访问url和关闭prometheus
external_url ‘http://http://gitlablcx.com’
prometheus_monitoring[‘enable’] = false

#配置gitlab通过smtp发送邮件
[root@k8s-node2 demo]# vim /etc/gitlab/gitlab.rb
gitlab_rails[‘gitlab_email_enabled’] = true
gitlab_rails[‘gitlab_email_from’] = ‘245684979@qq.com’
gitlab_rails[‘gitlab_email_display_name’] = ‘linux_gitlab’

gitlab_rails[‘smtp_enable’] = true
gitlab_rails[‘smtp_address’] = “smtp.qq.com”
gitlab_rails[‘smtp_port’] = 465
gitlab_rails[‘smtp_user_name’] = “245684979”
gitlab_rails[‘smtp_password’] = “lvlina.199625”
gitlab_rails[‘smtp_domain’] = “qq.com”
gitlab_rails[‘smtp_authentication’] = “login”
gitlab_rails[‘smtp_enable_starttls_auto’] = true
gitlab_rails[‘smtp_tls’] = true

#重新配置
gitlab-ctl reconfigure


#### 11.gitlab汉化


![](https://img-blog.csdnimg.cn/20190923165615703.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)



#下载汉化包
https://gitlab.com/xhang/gitlab

gitlab-ctl stop
tar xf gitlab-11-9-stable-zh.tar.gz
\cp -a gitlab-11-9-stable-zh/* /opt/gitlab/embedded/service/gitlab-rails/


![](https://img-blog.csdnimg.cn/20190923170951661.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)


#### 12. gitlab-用户-用户组-项目之间的关系


`先创建用户组,在基于用户组创建项目,最后创建用户,编辑用户组,添加成员,注意权限`


![](https://img-blog.csdnimg.cn/20190923181542449.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)


#### 13. gitlab备份和恢复



#备份
gitlab-rake gitlab:backup:create

#恢复
gitlab-ctl stop
gitlab-rake gitlab:backuip:restore BACKUP=1510472027_2019_09_23_9.4.5
gitlab-ctl start

vim /etc/gitlab/gitlab.rb
gitlab_rails[‘manage_backup_path’] = true
gitlab_rails[‘backup_path’] = “/var/opt/gitlab/backups”
gitlab_rails[‘backup_keep_time’] = 604800

#迁移云主机
先备份,云主机安装相同版本,恢复

#更新配置
gitlab-ctl reconfigure


#### 14.gitlab版本升级



gitlab升级,要小版本跨 10—>11—>12


`扩展内容:`



> 
> 1.安装svn服务器,将svn中的数据迁移到git仓库  
>  `git-svn`  
>  `git clone svn`
> 
> 
> **svn是一个中心化的版本控制工具,git是分布式的,每个人都可以有完整的代码仓库**
> 
> 
> 



#安装svn
yum install subversion -y
mkdir /svn/repo -p

#初始化仓库
svnadmin create /svn/repo

cd /svn/repo/conf
vim svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /svn/repo
[sasl]

vim passwd
[users]
admin = 123456

vim authz
[/]
admin = rw
test = r

启动svn服务
svnserve -d -r /svn/repo

#svn迁移到git
yum install git-svn -y
git svn clone svn://10.0.0.13 --username=admin --no-metadata --authors-file=password.txt git

cat password.txt
admin=245684979@qq.com



> 
> 2.找回`gitlab`的root密码
> 
> 
> 




## 2. 持续部署



> 
> gitlab, lb(部署服务器), web01,web02
> 
> 
> 



#lb01,web01,web02都按照nginx
echo “192.168.37.202 mirrors.aliyun.com” >>/etc/hosts
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install nginx -y

#创建upstream资源池文件
vim /etc/nginx/upstream_monitor
server 10.0.0.7;
server 10.0.0.8;

#配置lb01负载均衡
vim /etc/nginx/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream monitor {
include /etc/nginx/upstream_monitor;
}
server {
listen 80;
server_name monitor.oldqiang.com;
location / {
proxy_pass http://monitor;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
}

nginx -t
systemctl restart nginx
systemctl enable nginx

#配置web01和web02,文件内容相同
vi /etc/nginx/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name monitor.oldqiang.com;
location / {
root /code/web;
index index.html index.htm;
}
}
}

nginx -t
systemctl restart nginx
systemctl enable nginx

#在web01和web02创建首页并创建软连接
[root@cx01 nginx]# cd /code/
[root@cx01 code]# mkdir web_v1
[root@cx01 code]# echo web01 >web_v1/index.html
[root@cx01 code]# ln -s web_v1 web
[root@cx01 code]# ll
total 0
lrwxrwxrwx 1 root root 6 Sep 24 11:11 web -> web_v1
drwxr-xr-x 2 root root 24 Sep 24 11:11 web_v1

[root@web02 code]# cd /code/
[root@web02 code]# mkdir web_v1
[root@web02 code]# echo web02 >web_v1/index.html
[root@web02 code]# ln -s web_v1 web
[root@web02 code]# ll
total 0
lrwxrwxrwx 1 root root 6 Sep 24 11:12 web -> web_v1
drwxr-xr-x 2 root root 24 Sep 24 11:12 web_v1

#在windows上做hosts解析
C:\Windows\System32\drivers\etc\hosts

10.0.0.5 http://monitor.lcx.com/


![](https://img-blog.csdnimg.cn/20190924111946759.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)


`新建项目`



> 
> ![](https://img-blog.csdnimg.cn/20190924112546876.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)
> 
> 
> 


`流程`



> 
> ![](https://img-blog.csdnimg.cn/20190924113401482.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM3MjQyNTIw,size_16,color_FFFFFF,t_70)
> 
> 
> 



#在gitlab上
git config --global user.name “Administrator”
git config --global user.email “admin@example.com”
mkdir /code
cd /code/
ls
wget http://192.168.37.202/linux59/monitor_html.tar.gz
ls
tar xf monitor_html.tar.gz
cd monitor/
ls
ls .git/
git branch
git log --oneline

[root@k8s-node2 monitor]# mkdir -p /server/scripts
[root@k8s-node2 monitor]# cd /server/scripts/

============================================================
[root@lb scripts]# cat auto_deploy.sh
#!/bin/bash

serverlist=“10.0.0.7 10.0.0.8”

#代码更新

fabu() {
cd /code/monitor/ &&
git pull -u origin
version=git tag|tail -1
echo KaTeX parse error: Expected group after '_' at position 30: …f /code/monitor_̲{version}.tar.gz *

for ip in KaTeX parse error: Expected group after '_' at position 38: …p /code/monitor_̲{version}.tar.gz root@ i p : / c o d e s s h r o o t @ {ip}:/code ssh root@ ip:/codesshroot@{ip} "mkdir -p /code/web_KaTeX parse error: Expected 'EOF', got '&' at position 11: {version} &̲& tar xf /cod…{version}.tar.gz -C /code/web_KaTeX parse error: Expected 'EOF', got '&' at position 11: {version} &̲& \ rm -fr /co…{version} /code/web && rm -fr /code/monitor_${version}.tar.gz "
done
}

huigun() {
cd /code/monitor/
version=git tag|tail -1

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

tar xf /code/monitor_ v e r s i o n . t a r . g z − C / c o d e / w e b _ {version}.tar.gz -C /code/web\_ version.tar.gzC/code/web_{version} &&
rm -fr /code/web && ln -s /code/web_KaTeX parse error: Expected 'EOF', got '&' at position 21: …ion} /code/web &̲& rm -fr /code/…{version}.tar.gz "
done
}

huigun() {
cd /code/monitor/
version=git tag|tail -1

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
[外链图片转存中…(img-UxVCQ3Ek-1713171570093)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 12
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值