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

相关推荐
dragoooon3432 分钟前
[Linux网络基础——Lesson9.「TCP 全连接队列与 tcpdump 抓包」]
前端·git·github
大、男人1 小时前
分享一个git设备代理的方法
git
悟悟悟!2 小时前
git使用笔记:git日常工作流和命名规范
笔记·git·elasticsearch
漏洞文库-Web安全2 小时前
CTFHub 信息泄露通关笔记9:Git泄露 Index - 指南
笔记·git·安全·web安全·elasticsearch·网络安全·ctf
weixin_307779132 小时前
深度解析 Jenkins Git Client 6.4.0 插件:核心功能、应用场景与最佳实践
运维·git·架构·jenkins
終不似少年遊*2 小时前
【Git使用】Git 团队开发常用命令汇总手册
git·团队开发·开发工具·使用手册·项目提交
郑州光合科技余经理10 小时前
同城系统海外版:一站式多语种O2O系统源码
java·开发语言·git·mysql·uni-app·go·phpstorm
郑州光合科技余经理14 小时前
基于PHP:海外版同城O2O系统多语言源码解决方案
java·开发语言·git·spring cloud·uni-app·php·uniapp
Violet_YSWY14 小时前
git变基删除中间版本,使用drop出现文件丢失问题,原因及解决方案
git
dragonchow12317 小时前
git sparse-checkout, 只拉取部分目录
git