在Linux下搭建Git服务器的方法详解
作者:juneshen 发布时间:2022-02-05 16:35:10
前言
GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。
我打算自己搭建git服务器。虽然目前已经有很不错的git工具,如github,coding.net等,但是为了安全,减少限制和开销,还是放在自己的服务器为好。下面给出安装配置的过程,有问题欢迎讨论和交流,我会及时回复的。
第一步
安装git:可以通过命令的方式快速安装,不同的linux的安装方法可能不一样,我的是采用的yum方法。ubuntu可以用apt-get
命令。
sudo yum install git
第二步
添加git用户,因为git服务器只限定来做项目代码交流的,专门开出一个用户来访问git服务器,比较好管理和控制。
sudo adduser git
第三步
设置git用户的登陆密码。因为git提供ssh协议登陆功能,网上有的采用了存储客户端rsa_pub密码的方式来免密登陆,但是我按照这个方法存储了公钥文件,修改了ssh的配置,改了文件的权限,最后实际测试都不可以,还是在git访问时提示输入密码。所以干脆就自己设置一个密码吧,也安全一些。工作量和需要用户把公钥文件发给管理员是一样。
passwd git
第四步
设置git登陆用户的权限。为了使git远程登陆时,只允许使用git-shell命令,需要修改/etc/passwd
文件找到git:x:500:500:,,,:/home/git:/bin/bash
这一行,一般是在最后一行,改为git:x:500:500:,,,:/home/git:/usr/bin/git-shell
注意数字根据你的电脑的实际情况,可能是不一样的数字。经过以上简单的步骤,已经搭建好了git的环境了。
下面是git项目的创建了第四步:创建仓库。可以根据已有项目文件目录来创建,方法是先进入到项目根目录。
然后输入以下命令
sudo git init
第五步
修改生成的.git文件的属主为git用户
sudo chown -R git:git .git
第六步
以上只是创建了一个空仓库,需要把项目文件加入进去。以下命令是git常用操作命令,属于git的使用方法了。有兴趣的可以自己去学习相关命令
git add .
git commit -a -m "init a git project "
经过以上步骤,服务器端的git项目仓库已经建立好。其他人可以clone下git服务器的项目文件到本地了。但是需要首先在自己的客户端安装git-shell工具。对于已经安装了github客户端的朋友,可以直接用它的Git Shell终端下搭建git是很容易。
git clone <a target=_blank href="mailto:git@host-IP:/your-git-repository">git@host-IP:/your-git-repository</a>
总结
其实搭建Git服务器非常简单,通常10分钟即可完成。以上就是这篇文章的全部内容,希望本文的内容对啊大家的学习或者工作能带来一定的帮助。


猜你喜欢
- python取余运算符是什么?python取余运算符是%,即表示取模,返回除法的余数。假设变量: a=10,b=20:那么b % a 输出结
- 什么是SQL 指令植入式攻击?在设计或者维护Web网站时,你也许担心它们会受到某些卑鄙用户的恶意攻击。的确,如今的Web网站开发者们针对其站
- 本文实例为大家分享了vue实现全屏滚动效果(的具体代码,供大家参考,具体内容如下是什么网页的一个页面占据一屏的宽高,多个页面上下或者左右拼接
- 前言前面的两篇文章对 Go 语言的基础语法和基本数据类型以及几个复合数据类型进行介绍,本文将对 Go 里面的指针和结构体进行介绍,也为后续文
- 本文实例总结了Python常见的pandas用法。分享给大家供大家参考,具体如下:import numpy as npimport pand
- IE下window.lcoation可以被重写而不重新定向,具体方法是: var location = {},然后就可以重写具体的属性了,这
- 一,jieba的介绍jieba 是目前表现较为不错的 Python 中文分词组件,它主要有以下特性:支持四种分词模式:精确模式全模式搜索引擎
- Keras提供了两套后端,Theano和Tensorflow,不同的后端使用时维度顺序dim_ordering会有冲突。对于一张224*22
- 在一些特殊的业务场景中,我们需要一次性提取一张图片中的色卡信息,并且需要使用十六进制的颜色表示方法进行展示。今天得空做了一个小工具,用来自定
- 1. 首先到 nodejs.org 下载 Node.js 安装包并安装。2. 打开 Sublime Text 2 编辑器。选择菜单 Tool
- 加上设置字符编码的方法:response.setHeader("charset","gb2312")
- 这个问题我在给新云CMS升级时遇到了,按照升级步骤做完,后台登录时,出现“HTTP 错误 500.100 - 内部服务器错误 - ASP 错
- 概述pandas中与库版本或依赖库版本相关的API主要有以下4个:pandas.__version__:查看pandas简要版本信息。pan
- 获取不带扩展名的文件的名称:import osprintos.path.splitext("path_to_file")
- 本文实例讲述了Python实现矩阵加法和乘法的方法。分享给大家供大家参考,具体如下:本来以为python的矩阵用list表示出来应该很简单可
- CSS的出现使网页制作者在对网页元素的控制方便许多,当然,有利必有弊,CSS只能对颜色、大小、距离等静
- 一、基本概述目前电脑上已经下载了MongoDB数据库、navicat for mongodb作为mongoDB的可视化工具,形如navica
- 首先要下载:Graphviz - Graph Visualization Software安装完成后将安装目录的bin 路径加到系统路径中,
- 环境系统 : win 10 显卡:gtx965m cpu :i7-6700HQ python 3.61 pytorch 0.3包引用impo
- 1、授权机制的主要作用是什么?授权机制的基本作用是给某个主机上的用户对某个数据库以select,insert,update和detete的权