第4章 Git服务器集成

第4章 Git服务器集成

4.1 Git远程服务器

在之前的操作中,所有的操作都是基于本地机器完成的。如果在公司中,一个项目是共用一个版本库的。那么所有的开发人员都应该对同一个版本库进行操作。因为Git软件本身就是用于Linux系统开发所设计的版本管理软件,所以项目中搭建的共享版本库也应该以linux系统为主。那么接下来,咱们就演示一下在CentsOS服务器中搭建Git服务器。

4.1.1 下载Git软件(linux版本)

官网下载地址:https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.38.1.tar.gz

将下载后的压缩文件上传到Linux系统中

img

4.1.2 安装Git软件

4.1.2.1 解压Git

# 将压缩文件解压到自定义位置

tar -zxvf git-2.38.1.tar.gz -C /opt/module/

# 可以更改名字,变得简短一些,好操作

cd /opt/module

mv git-2.38.1/ git

4.1.2.2 安装依赖

解压后,我们需要编译源码,不过在此之前需要安装编译所需要的依赖,耐心等待安装完成,中途出现提示的时候输入y并按回车。

#

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

img

4.1.2.3 删除旧版Git

安装编译源码所需依赖的时候,yum操作回自动安装旧版本的Git。

img

我们这里需要卸载这个旧版的Git

# 删除旧版本的Git

yum -y remove git

img

4.1.2.4 编译、安装Git

# 进入到Git软件的解压目录

cd /opt/module/git

# 编译时,prefix设定为Git软件安装目录

make prefix=/usr/local/git all

# 安装Git

make prefix=/usr/local/git install

img

4.1.2.5 配置环境变量

修改linux系统中/etc/profile文件,配置环境变量

# 配置环境变量

export PATH=$PATH:/usr/local/git/bin

# 刷新环境,让环境变量立即生效

source /etc/profile

4.1.2.6 建立链接文件

# git安装路径是/usr/local/git,不是默认路径

ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack

ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack

4.1.2.7 测试安装

# 获取git软件版本

git --version

img

4.1.3 创建Git用户

因为Git服务器需要安装在linux系统上,当使用远程客户端操作时,就需要提供相应的Git账号进行提交的,如果你的仓库文件的用户不是git的话,是root用户或者别的用户,那么你git push ,它是不允许的,因为你的git用户没有权限。你可以给这个文件创立git用户,或者修改文件夹的权限让所有用户都可以更改

# 增加用户

adduser git

# 设定密码

passwd git

img

4.1.4 SSH免密登录

4.1.4.1 服务器端操作

# 进入用户目录

cd /home/git

# 在git用户根目录创建.ssh目录

sudo mkdir .ssh

sudo touch .ssh/authorized_keys

# 设定.ssh目录,authorized_keys的权限

sudo chmod -R 700 /home/git/.ssh

sudo chmod 600 /home/git/.ssh/authorized_keys

4.1.4.2 客户端端操作

# 在客户端生成SSH密钥

# 默认生成的密钥用户就是当前用户,需要和之前的全局配置保持一致

user.name=18801@LAPTOP-J9IRK5BM

user.email=18801@LAPTOP-J9IRK5BM

# 按照提示三次回车即可

ssh-keygen -t rsa

img

在用户根目录的.ssh文件夹内,id_rsa.pub就是我们要的公钥

img

将文件中的内容复制到服务器端的.ssh/authorized_keys文件中

img

4.1.5 创建Git版本库

4.1.5.1 创建文件目录

# 进入用户目录

cd /home/git

# 创建版本库目录

mkdir git-rep

# 设定文件所属用户

sudo chown git:git git-rep

4.1.5.2 初始化版本库

# 进入仓库目录

cd /home/git/git-rep

# 初始化仓库,和前面的git init略有不同

git init -bare test.git

# 设定文件所属用户

sudo chown -R git:git test.git

4.1.6 远程访问Git版本库

4.1.6.1 将远程仓库克隆到本地

# 将远程仓库克隆到本地,形成本地仓库

# 克隆远程仓库 => 用户@主机名:仓库地址

git clone git@linux1:/home/git/git-rep/test.git

4.1.6.2 提交文件到本地仓库

# 增加文件

git add client.txt

# 提交文件

git commit -m 'client'

img

4.1.6.3 将本地仓库同步到远程仓库

# 同步远程仓库

# 远程仓库默认有个别名叫origin,将本地仓库的文件推送(push)到远程仓库

# git push 远程仓库别名 分支名称

git push origin master

img

4.1.6.4 查看远程仓库

# 服务器端切换用户

su git

# 进入仓库

cd /home/git/git-rep/test.git

# 切换到主干分支

git checkout master

# 查看git日志

git log

img

4.2 GitHub服务器

公司中,我们可以搭建中央服务器让项目组开发人员共享代码,但是如果我们的开发人员都是通过互联网进行协作,而不是在同一个地方,那么开发时,程序文件代码的版本管理就显得更加重要,这就需要搭建一个互联网的版本库,让不同地点的人都可以进行访问。这里我们不用自己搭建。因为GitHub网站已经帮助我们提供了共享版本库功能。所以我们接下来就讲解一下,如何使用GitHub网站所提供的功能使用Git。

img

4.2.1 注册网站会员

GitHub官网地址:https://github.com/

填写你的邮箱地址和密码,姓名

img

一顿操作,注册完毕后,进入你的主页

img

4.2.2 创建新的仓库

img

输入仓库的相关信息

img

img

点击创建按钮,创建新的仓库。

img

4.2.3 本地仓库的基本操作指令

# create a new repository on the command line

echo "# git-study" >> README.md

git init

git add README.md

git commit -m "first commit"

git branch -M main

git remote add origin git@github.com:Aitiger-coffee/git-study.git

git push -u origin main

# push an existing repository from the command line

git remote add origin git@github.com:Aitiger-coffee/git-study.git

git branch -M main

git push -u origin main

4.2.4 SSH免密操作

github支持两种同步方式“https”和“ssh”。如果使用https很简单基本不需要配置就可以使用,但是每次提交代码和下载代码时都需要输入用户名和密码。ssh模式比https模式的一个重要好处就是,每次push、pull、fetch等操作时,不用重复填写遍用户名密码。前提是你必须是这个项目的拥有者或者合作者,且配好了ssh key。

4.2.4.1 本地生成SSH密钥

# ssh-keygen -t rsa -C GitHub**账号**

ssh-keygen -t rsa -C 15811009164@163.com

img

4.2.4.2 集成用户公钥

执行命令完成后,在window本地用户.ssh目录C:\Users\用户名.ssh下面生成如下名称的公钥和私钥:

img

按照操作步骤,将id_rsa.pub文件内容复制到GitHub仓库中

img

img

点击Add按钮,增加SSH公钥信息

img

4.2.5 设定全局用户

git config --global user.name '15811009164'

# 这里的邮箱地址需要为GitHub网站的注册账号

git config --global user.email '15811009164@163.com'

4.2.6 创建本地库以远程地址

# 初始化本地仓库

git init

# 设置远程仓库

git remote add origin git@github.com:Aitiger-coffee/git-study.git

4.2.7 新增,提交本地仓库文件

# 新增文件

git add test.txt

# 提交文件

git commit test.txt

img

4.2.8 推送到GitHub远程仓库

# 推送文件

git push origin master

img

4.2.9 查看GitHub远程仓库

img

4.2.10 增加合作伙伴

img

选择合作账号,发出合作申请

img

4.2.11 合作伙伴确认

合作伙伴收到确认后,点击Join按钮继续

img

点击Accept Invitation按钮,进行确认

img

此时已经可以合作开发了。

img

4.2.12 远程仓库fork操作

如果项目存在大量合作伙伴,对于版本库的管理明显是一个特别大的风险,所以如果不想要选择大量的合作伙伴,但依然有人想要对项目代码进行维护,更新和扩展的话,此时,我们就可以使用fork功能。

img

img

点击Create fork按钮即可

img

这样就等同于创建了一个自己的远程仓库。但是这个远程仓库等同于是一个分支远程仓库,你可以随便操作,并不会影响源仓库,但是如果你的修改,更新想要融合到源仓库中,就需要提交申请了。

Ø 我们这里首先将文件改一下。

img

img

Ø 发送提交申请

img

img

img

Ø 合并修改请求

img

img

img

img

Ø 修改请求确认

img

4.3 IDEA集成GitHub

实际的开发中,代码都是采用IDE进行开发,所以我们这里介绍一下IDEA软件是如何集成GitHub远程仓库进行代码版本控制的。这里采用的IDEA版本为2022.2.1,其他版本的IDEA软件会略有差别

img

4.3.1 配置Git软件

img

4.3.2 配置GitHub账号

img

继续点授权按钮

img

继续点击授权按钮

img

输入GitHub账号密码

img

img

img

4.3.3 创建项目

img

4.3.4 添加项目代码

img

4.3.5 创建本地版本库

img

img

4.3.6 提交本地版本库

img

img

img

img

img

img

4.3.7 创建新的远程版本库

img

4.3.7 推送到远程版本库

img

img

img

img

img

4.3.8 查看历史版本

img

img

img

img

4.3.9 分支操作

4.3.9.1 创建分支

img

img

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇