如何搭建一台属于自己的Git服务器?

本文涉及的产品
云防火墙,500元 1000GB
简介: 在日常生活中,有很多开发组织在开发的时候大部分都会将代码提交到自己的Git服务器上,即公司内部的Git代码仓库;那很多小伙伴会问如果自己也想要一台属于自己的Git服务器该怎么办呢?接下来就是解开谜题的时候…

关注公众号:【程序猿香蕉】,有更多精彩内容等着你呢~

 在日常生活中,有很多开发组织在开发的时候大部分都会将代码提交到自己的Git服务器上,即公司内部的Git代码仓库;那很多小伙伴会问如果自己也想要一台属于自己的Git服务器该怎么办呢?接下来就是解开谜题的时候…          

我们安装的Git服务器以GitBlit为基准,这里事先说明

一、安装JDK(这里我们安装的是JDK 17)

查看是否安装jdk

rpm -qa | grep jdk

下载JDK的RPM包

wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm

安装jdk(将jdk安装到/usr/java文件夹下)

rpm -ivh jdk-17_linux-x64_bin.rpm > /usr/java

编辑/etc/profile文件,加入以下代码

#JAVA环境变量
export JAVA_HOME=/usr/java/jdk-17.0.4.1
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib

使java环境生效

source /etc/profile

判断jdk是否安装成功,是否是当前安装版本

  java -version

二、安装GitBlit(当前GitBlit版本为1.9.1)

下载GitBlit安装包,在这里小编已经给大家准备好了

https://miracle-1306318206.cos.ap-shanghai.myqcloud.com/public/gitblit-1.9.1.tar.gz

使用wget下载安装包

wget https://miracle-1306318206.cos.ap-shanghai.myqcloud.com/public/gitblit-1.9.1.tar.gz

gitblit-1.9.1.tar.gz移动到/usr/local文件夹中

mv gitblit-1.9.1.tar.gz /usr/local/

解压gitblit-1.9.1.tar.gz

tar -zxvf gitblit-1.9.1.tar.gz

gitblit-1.9.1文件夹命名为gitblit

mv gitblit-1.9.1 gitblit

进入/usr/local/gitblit/data,并修改defaults.properties文件,将server.httpPort的值改为10099

cd gitblit-1.9.1/data
vim defaults.properties
server.httpPort = 10099

进入/usr/local/gitblit文件夹,修改路径配置

cd /usr/local/gitblit

根据自己的服务器的系统内核,选择修改对应的文件,我当前的系统内核是Linux,所以选择service-centos.sh文件修改

vim service-centos.sh

根据自己的安装路径修改下面的配置GITBLIT_HTTP_PORT是我们到时候访问gitblit仓库的接口

GITBLIT_PATH=/usr/local/gitblit
GITBLIT_BASE_FOLDER=/usr/local/gitblit/data
GITBLIT_HTTP_PORT=10099
GITBLIT_HTTPS_PORT=8443
GITBLIT_LOG=/usr/local/gitblit/log/gitblit.log

修改完成之后,gitblit我们就安装成功了,接下来就是启动

切换到/usr/local/gitblit文件夹

./gitblit.sh

我们也可以选择后台启动,这个时候当前目录会生成一个日志文件

nohup ./gitblit.sh &

接下来我们就得将端口开放,即上面我们设置的GITBLIT_HTTP_PORT的端口,可以使用IP+端口访问,如果访问成功则部署成功,如果无法访问,可能是端口未开或者是防火墙未关闭

1.开放端口

如果是远程服务器,则可以在线上防火墙开启端口;

如果是本地服务器,那么按照如下步骤操作:

#查看防火墙状态
systemctl status firewalld.service
#停止防火墙
systemctl stop firewalld.service
#永久关闭防火墙
systemctl disable firewalld.service
#关闭SELinux安全机制
vim /etc/selinux/config
#找到并修改: 
SELINUX=disabled
#需要重启系统:
reboot


相关文章
|
1月前
|
前端开发 开发工具 git
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
29 5
|
2月前
|
Linux 开发工具 数据安全/隐私保护
搭建 Git 私人服务器完整指南
本文详细介绍了如何从零开始搭建一个私人的 `Git` 服务器。首先,文章解释了 `Git` 的概念及其优势,并阐述了搭建私人 `Git` 服务器的重要性,包括数据隐私、定制化需求及成本效益。接着,文章分步骤指导读者完成服务器的准备工作,包括操作系统、硬件和网络要求。随后,详细介绍了在不同操作系统上安装 `Git` 的方法,并演示了如何创建 `git` 用户、部署仓库以及设置免密登录。此外,还提供了客户端连接远程仓库的具体步骤,包括 Linux 和 Windows 的操作方式。最后,文章探讨了迁移仓库的方法以及搭建 `Git` 服务器的一些进阶选项。
405 0
搭建 Git 私人服务器完整指南
|
3月前
|
开发工具 git iOS开发
服务器配置Huggingface并git clone模型和文件
该博客提供了在服务器上配置Huggingface、安装必要的工具(如git-lfs和huggingface_hub库)、登录Huggingface以及使用git clone命令克隆模型和文件的详细步骤。
272 1
|
5月前
|
Shell 网络安全 开发工具
git实现服务器自动push拉取代码--webhooks
git实现服务器自动push拉取代码--webhooks
488 1
|
6月前
|
JavaScript 持续交付 Go
如何实现Git Push之后自动部署到服务器?
如何实现Git Push之后自动部署到服务器?
198 0
|
23天前
|
弹性计算 网络安全
阿里云国际OpenAPI多接口快速管理ECS服务器教程
阿里云国际OpenAPI多接口快速管理ECS服务器教程
|
6天前
|
弹性计算
阿里云2核16G服务器多少钱一年?亲测价格查询1个月和1小时收费标准
阿里云2核16G服务器提供多种ECS实例规格,内存型r8i实例1年6折优惠价为1901元,按月收费334.19元,按小时收费0.696221元。更多规格及详细报价请访问阿里云ECS页面。
39 9
|
3天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
6天前
|
弹性计算 异构计算
2024年阿里云GPU服务器多少钱1小时?亲测价格查询方法
2024年阿里云GPU服务器每小时收费因实例规格不同而异。可通过阿里云GPU服务器页面选择“按量付费”查看具体价格。例如,NVIDIA A100的gn7e实例为34.742元/小时,NVIDIA A10的gn7i实例为12.710156元/小时。更多详情请访问阿里云官网。
40 2
|
12天前
|
存储 弹性计算 NoSQL
"从入门到实践,全方位解析云服务器ECS的秘密——手把手教你轻松驾驭阿里云的强大计算力!"
【10月更文挑战第23天】云服务器ECS(Elastic Compute Service)是阿里云提供的基础云计算服务,允许用户在云端租用和管理虚拟服务器。ECS具有弹性伸缩、按需付费、简单易用等特点,适用于网站托管、数据库部署、大数据分析等多种场景。本文介绍ECS的基本概念、使用场景及快速上手指南。
49 3