如何构建Git 服务器

上一节我们讲了git如何使用,这节我们讲下如何搭建git服务端,也就是远程仓库。1、准备工作:centos 是自带git 的; 但是版本太低,可能在后面的工作中

大家好,感谢邀请,今天来为大家分享一下如何构建Git 服务器的问题,以及和的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

Centos 自带git;但版本太低,后续工作中可能会遇到一些异常,所以:

yum -y remove git #卸载git

由于CentOS已经内置了OpenSSH,如果您的系统没有,请自行安装。

百胜安装curl-devel expat-devel gettext-devel openssl-devel zlib-devel

检查ssh版本

$ ssh -V # 输出以下内容表示没有问题,可以继续。版本可能不一致,只要它们有效即可。 OpenSSH_6.6.1p1、OpenSSL 1.0.1e-fips 2013 年2 月11 日

2.安装git

# 请确保您切换到root帐户

$ 苏根

(一)、centos环境

$ yum install -y git

(二)、Ubuntu环境

apt-get 安装git

注意:Ubuntu 跳过下面的步骤3

# 验证是否安装成功

$ git –版本

# 输出以下内容表示成功:

git 版本x.x.x.x

3.添加git管理账户并设置密码

# 添加git账户

$ 添加用户git

#修改git密码

$ 密码git

# 然后输入两次git密码进行确认。

# 检查git是否安装成功

$ cd /home ls -al

# 如果git已经存在则表示成功。参考如下:

drwxr-xr-x。 5 根根4096 4 月4 日15:03。

博士-xr-xr-x。 19 根4096 四月4 15:05 .

drwx—— 10 git git 4096 四月4 00:26 git

# 默认情况下,我们还被分配了一个名为git 的组。

4.Git权限管理

对于git仓库的权限管理,我们可以手动或者通过其他辅助工具进行管理和配置。如果你的团队规模较小,可以直接通过ssh公钥进行管理。如果你的团队规模较大,最好使用gitolite 或gitosis。两者很相似,一个是Perl开发的,一个是Python开发的。

# 1.切换到git账户

$ 苏吉特

# 2.进入git账户的主目录

$ cd /home/git

# 3. 创建.ssh 配置。如果该文件夹已存在,请忽略此步骤。

$ mkdir.ssh

# 4、进入刚刚创建的.ssh目录,创建authorized_keys文件。该文件存储用于客户端远程访问的ssh 公钥。

如何构建Git 服务器

$ cd /home/git/.ssh

$触摸授权密钥

# 5.设置权限。这一步不能省略,也不要更改权限值,否则会报错。

$ chmod 700 /home/git/.ssh/

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

5、配置客户端的ssh公钥并上传到服务器

步骤1:创建客户端的ssh私钥和公钥

检查您是否已经拥有ssh 公钥和私钥:转到用户的主目录。

用户主目录:

Windows系统:C:\Users\用户名

Linux系统:/home/用户名

Mac系统:/Users/用户名

然后检查是否有.ssh文件夹,以及该文件夹中是否有以下文件。

# .ssh位于用户主目录的.ssh文件夹中

id_rsa

id_rsa.pub # 我们要使用的公钥

如果没有,则使用ssh-keygen 创建ssh 私钥。

$ ssh-keygen-trsa

# 接下来,只需按三个回车键即可恢复默认值。

成功创建私钥后,检查用户目录,看看是否故意添加了公钥文件id_rsa.pub。

第二步:将私钥复制到git服务器

如何将客户端文件复制到服务器上?我建议使用scp 命令进行复制。您也可以使用ssh工具手动上传。

以下以mac系统为例:

# 首先进入我的用户主目录的.ssh目录,将用户名xxx替换成你自己的$ cd /Users/xxx/.ssh

# 以下命令为:将本地的id_rsa.pub文件复制到aicoder.com服务器上,登录aicoder.com服务使用的账号为git。 # 冒号后面默认是git账户的主目录,最终文件保存为laoma.pub# 注意:域名改成自己的或者IP。你可以自己设置最终的文件名,稍后会有用。 $ scp ./id_rsa.pub git@aicoder.com:ssh/laoma.pub

6.在服务器端添加客户端的SSH公钥

切换到服务器,将刚刚上传的客户端公钥id_rsa.pub文件内容添加到authorized_keys中。每个id_rsa.pub 一行将允许客户端SSH 访问。

# 切换到git账户

$ 苏吉特

$ cd /home/git/.ssh

$ls-al

# 检查.ssh目录下是否有authorized_keys和laoma.pub文件

#.

# |– 授权密钥

# `– 老马.pub

# 如果有,则按照以下步骤将laoma.pub文件的内容添加到authorized_keys中。

$ cat laoma.pub 授权密钥

# 表示追加到文件后面。主要是如果您使用其他编辑器,每个ssh pub 应该位于单独的行上。推荐使用cat命令,方便简单。

7、在服务器端创建测试git仓库

输入服务器的终端。

如何构建Git 服务器

# 切换到git账户

$ 苏吉特

# 输入git账户的用户主目录。

$ mkdir /home/git/存储库

$ cd /home/git/存储库

#初始化一个空仓库

$ git init –bare test.git

# 输出以下内容表示成功。该目录仅用于存储仓库的历史版本和其他数据。

在/home/git/repository/test.git/中初始化空Git 存储库

我这里是abc.parent.git

8.Git使用post-receive自动部署push代码

#编写一个自动更新钩子,实现git推送,直接将代码部署到服务器目录

$ cd /home/git/repository/test.git/hooks/

$ 接收后触摸

$ vim 接收后

#添加以下内容

# 指定我的代码签出目录。 DIR 是要将代码推送到git 服务器进行部署的工作目录。

DIR=/home/git/repository/test.git/code/

git –work-tree=${DIR} clean -fd

# 直接强制结账

git –work-tree=${DIR} 结帐–force

#添加执行权限

$ chmod +x 接收后

9.客户端映射到git远程仓库

#本地安装git客户端并提交到本地仓库

$ git 初始化

$触摸a.txt

$ echo ‘aicoder.com’ a.txt

$ git add .

$ git commit -m ‘第一次提交’

# 添加当前仓库与远程仓库的映射

$ git Remote add origin git@服务器的IP或域名:/home/git/repository/test.git

# 将当前客户端仓库推送到远程仓库。

$ git Push -u 原始主机

10.禁用git账户的shell登录

$usermod -s /usr/bin/git-shell git #git 是之前创建的用户名

11.git客户端克隆远程仓库代码

git clone git@服务器的IP或域名:/home/git/repository/test.git

用户评论

如何构建Git 服务器
抚涟i

终于找到了搭建 Git 服务端的详细教程!我一直在用 GitHub 储存代码,但最近想试试自己架设服务端,这样能更安全和灵活一些。这篇博文写的非常清楚,图文并茂也很易理解.

    有13位网友表示赞同!

如何构建Git 服务器
泡泡龙

之前也想过自己搭建 Git 服务端,但是感觉太复杂了。看了这篇博客后发现其实并不难,主要是要了解一些基础的概念,比如版本控制、 repository 和 Git 命令。现在开始动手试试吧!

    有8位网友表示赞同!

如何构建Git 服务器
我怕疼别碰我伤口

虽然我平时用的是 GitHub,但是对于想要更私密项目和学习 Git 服务器本身的人来说,这篇教程确实很实用。一步步的讲解很容易上手,值得收藏!

    有15位网友表示赞同!

如何构建Git 服务器
来自火星球的我

搭建 Git 服务端确实能提高安全性和控制力,但维护成本也会增加,需要考虑资源、稳定性和日常管理的问题。 这篇文章提醒我得多加注意。

    有16位网友表示赞同!

如何构建Git 服务器
经典的对白

讲道理,很多时候自己搭建服务器太麻烦了,直接用 GitHub 或者 GitLab 更方便快捷,除非你有特别的需求才会去折腾吧

    有6位网友表示赞同!

如何构建Git 服务器
逾期不候

这篇博客里的工具和配置选择似乎比较偏向技术人员,对入门小白不太友好。希望能看到更通俗易懂的版本。

    有8位网友表示赞同!

如何构建Git 服务器
反正是我

搭建 Git 服务端确实有很多细节需要注意,例如安全设置、数据备份等等。建议能补充一些关于运维维护方面的知识。

    有20位网友表示赞同!

如何构建Git 服务器
浅嫣婉语

作者的逻辑清晰,步骤详细,图文结合,非常适合新手入门学习。点赞!

    有5位网友表示赞同!

如何构建Git 服务器
聽風

最近在研究 Git 的原理,正好看到这个教程。搭建自己的 Git 服务端或许是个不错的挑战,可以更深入地理解Git的工作机制!

    有17位网友表示赞同!

如何构建Git 服务器
傲世九天

我一直在用 BitBucket 搭建项目,感觉挺好用的,不过这篇文章也让我了解到自己搭建 Git 服务端的优势了!

    有11位网友表示赞同!

如何构建Git 服务器
古巷青灯

虽然文章介绍了不同的 Git 服务端方案,但我还是觉得开源软件更适合我。方便且能够自主部署和定制化,符合我的需求。

    有13位网友表示赞同!

如何构建Git 服务器
浮世繁华

搭建Git服务端需要一定的服务器配置知识,对初学者来说可能比较困难。希望作者可以提供一些基础教程帮助大家入门!

    有10位网友表示赞同!

如何构建Git 服务器
金橙橙。-

对于大型项目来说,搭建一个私有 Git 仓库确实能提高代码安全性和团队协作效率!

    有8位网友表示赞同!

如何构建Git 服务器
短发

我是一个前端开发者,平时主要使用浏览器开发工具和 GitHub 进行版本控制。感觉搭建 Git 服务端对我来说不太实用,不过还是很有参考价值!

    有17位网友表示赞同!

如何构建Git 服务器
玩味

这篇文章内容很丰富,不仅讲解了基本的搭建步骤,还涵盖了常见的配置选项和安全问题,真是太棒了!

    有6位网友表示赞同!

如何构建Git 服务器
▼遗忘那段似水年华

我之前用过一些 Git 协同工具,但从来没尝试过自己搭建 Git 服务端。看了文章后觉得很有意思,我想试试看能否在本地搭建一个简单版本的 Git 仓库!

    有12位网友表示赞同!

如何构建Git 服务器
遗憾最汹涌

搭建Git服务端需要考虑很多因素,包括服务器负载、数据安全和用户管理等等。这篇文章的介绍比较全面,可以帮助我做更深入的了解。

    有8位网友表示赞同!

如何构建Git 服务器
风中摇曳着长发

看了这篇博文后我终于明白了如何搭建 Git 服务端,感觉很有成就感!下一步就来尝试在实际项目中应用它!

    有20位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/110510.html

(0)
小su's avatar小su
上一篇 2024年8月30日 下午3:35
下一篇 2024年8月30日 下午3:40

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注