Git和Gitlab的部署和操作

一。GIT的基本操作

1.GIT的操作和查看内容

root@master \~# yum install git -y

root@master \~# git config --list:查看所有配置

2.GIT仓库初始化

root@master \~# mkdir /gittest:创建目录

root@master \~# cd /gittest/:进入目录

root@master gittest# git init:初始化

root@master gittest# ls -a:查看内容

. .. .git

root@master gittest# git status:查看工作区工作状态

3.git常见的命令:

二。Gitlab的基本内容

1.Gitlab的介绍

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实++现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。++它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。 一个基于GIT的源码托管解决方案 基于Ruby on rails开发 集成了nginx postgreSQL redis sidekiq等组件

2.安装包下载和配置

1.wget -c https://packages.gitlab.cn/repository/el/9/gitlab-jh-17.1.8-jh.0.el9.x86_64.rpm

2.yum install gitlab-jh-17.1.8-jh.0.el9.x86_64.rpm

3.root@slave3 gitlab# vim /etc/gitlab/gitlab.rb:配置文件

在文件的96行添加以下内容来收发邮件

gitlab_rails'gitlab_email_display_name' = 'gitlab'

gitlab_rails'gitlab_email_from' = '123456789@qq.com'

gitlab_rails'smtp_enable' = true

gitlab_rails'smtp_address' = "smtp.qq.com"

gitlab_rails'smtp_port' = 465

gitlab_rails'smtp_user_name' = "123456789@qq.com"

gitlab_rails'smtp_password' = "授权码"

gitlab_rails'smtp_domain' = "smtp.qq.com"

gitlab_rails'smtp_authentication' = "login"

gitlab_rails'smtp_enable_starttls_auto' = false

gitlab_rails'smtp_tls' = true

user"git_user_email" = "123456789@qq.com"

4.重启服务

gitlab-ctl reconfigure

5.gitlab的命令

6.通过配置ip进行访问:

登陆密码默认在此目录下,最多24小时

vim /etc/gitlab/initial_root_password

7.进行推送代码:假设给tom分配了任务,tom需要在linux中从root上进行拉取所需要的项目

(1)与root用户建立联系,从root中下载下来所需要的项目目录

git clone http://192.168.142.138/root/gitlab1.git

(2)创建首页分支,进行添加内容(实际中的代码)

root@slave3 \~# cd gitlab1/:进入通过git下载下来的项目文件内

root@slave3 gitlab1# git init:初始话git

root@slave3 gitlab1# git branch index:创建分支

root@slave3 gitlab1# git checkout index:进入分支

切换到分支 'index'

root@slave3 gitlab1# echo "my document" > index.html:将自己的代码放入文件

root@slave3 gitlab1# git add . :将内容添加到本地

root@slave3 gitlab1# git status:查看状态

位于分支 index

要提交的变更:

(使用 "git restore --staged <文件>..." 以取消暂存)

新文件: index.html

root@slave3 gitlab1# git config user.name tom:添加用户自己

root@slave3 gitlab1# git config user.email 123@qq.com:添加邮件

root@slave3 gitlab1# git push origin index:进行添加index这个分支到主项目中

(3)再查看是否添加成功:

(4)进行合并分支

(5)选择合并请求下的分配,选择右上角的项目进行合并请求,在源分支添加上tom上传的index文件,目标分支填写上root的主文件进行比较合并

填写完上述内容后进行合并,项目经理则会收到代码合并的请求,最终由项目经理进行同意请求,则整个则为完成

拓展:如何进行免密推送:

1.添加一个本地的公钥

root@slave3 .ssh# ssh-keygen

root@slave3 .ssh# cat /root/.ssh/id_rsa.pub

2.将公钥上传到tom的密钥栏

相关推荐
亿道电子Emdoor23 分钟前
【Perforce】Klocwork-kwgcheck图形化界面无法打开如何解决
git·python·github
小此方1 天前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙1 天前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK1 天前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No71 天前
Git版本控制工具(一)
git
小小小米粒2 天前
重置本地git
大数据·git·elasticsearch
鶴哥只手遮天2 天前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing2 天前
git 相关命令总结
git
A-刘晨阳2 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie2 天前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie