前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在linux搭建git服务器

在linux搭建git服务器

原创
作者头像
低级知识传播者
发布2024-04-28 10:26:39
1020
发布2024-04-28 10:26:39
举报

1、执行安装命令

代码语言:shell
复制
yum install -y git

系统会自动下载git安装包并安装,安装完成后使用如下命令查看git版本

代码语言:shell
复制
git --version

看到git的版本信息即表示安装成功

2、创建用户组和用户(或者直接用root用户,跳过这步)

代码语言:shell
复制
groupadd git #创建git用户组useradd git -g git #创建git用户并指定用户组为git

在创建好用户之后,出于安全考虑,需要禁用掉git账户使用shell登录的权限,因为这个git账户只是用来上传、下载代码使用的。

编辑/etc/passwd文件,将

代码语言:shell
复制
git:x:1001:1002::/home/git:/bin/bash

修改为

代码语言:shell
复制
git:x:1001:1002::/home/git:/bin/git-shell

3、在客户端生成公钥

客户端就是我们本地开发代码的windows电脑,执行如下命令**

**

代码语言:shell
复制
ssh-keygen -t rsa

一直回车即可

执行完成之后,可以到C:\Users\用户名.ssh\目录下查看生成的文件

其中id_rsa.pub是公钥文件,id_rsa是私钥文件

4、将公钥导入到Git服务器

那么公钥应该放在哪个位置呢?

其实我们可以查看/etc/ssh/目录下的sshd_config文件,里面指定了权限验证秘钥文件的存放位置是 .ssh/authorized_keys**

**

但是管理Git服务器的账户是刚刚创建的git账户,所以公钥的存放位置应该是/home/git/.ssh/authorized_keys。

PS.在linux中每创建一个账户都会在/home目录下生成对应账户名称的文件夹

所以接下来先在/home/git/下创建一个.ssh目录,再创建一个authorized_keys文件,并把生成的公钥文件中的内容拷贝到authorized_keys中就行了。

代码语言:shell
复制
cd /home/git/mkdir .sshcd .sshvi authorized_keys

5、创建远程仓库

在Git服务器上选择一个目录来存放远程仓库数据,例如 /home/data/git/,在这个目录下执行命令

代码语言:shell
复制
git init --bare myrepository.git

可以看到在这个目录下就创建好了一个空的git仓库

接下来把这个仓库的owner指定给git用户组的git账户,命令如下

代码语言:shell
复制
chown -R git:git myrepository.git # -R表示处理该目录以及所有子目录

到此为止我们的Git服务器和远程仓库就搭建好了,接下来简单的试验一下。

6、克隆远程仓库并上传本地文件到远程仓库

**

**

在E:\git-repository打开git bash窗口,执行命令:

代码语言:shell
复制
git clone git@ip:/home/data/git/myrepository.git

执行完成之后,就可以看到E:\git-repository下多了一个远程仓库的目录

然后在 E:\git-repository\myrepository 下就可以开发项目代码了。

这里我创建一个readme.md文件

打开git bash , 通过git status可以看到有一个待提交的文件

接着提交一下

最后将文件push到远程仓库

到这里这个文件就已经提交到远程Git服务器的myrepository仓库了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com