linux搭建git服务器

原创 2015年11月19日 23:47:18

git是非常方便的版本控制工具,目前网上有很多免费的git仓库可以给我们使用,但是有些时候我们并不放心将我们的项目寄放在别人的服务器上,这个时候就需要自己搭建一个git服务器。

在linux上面搭建git服务器是一件非常轻松的事情,只需要按照以下几步就能完成。为了确保整个过程的顺利,最好新创建一个名为git的账号,再使用该账号进行配置

1.安装git

在linux系统中,git安装只需要简单命令就可以完成,只需要打开终端,输入

sudo apt-get update
sudo apt-get install git

如果已经安装过了的就跳过这一步。

2.创建git仓库

终端进入到用来存放仓库的目录,新建一个文件目录,命名为: <工程名>.git ,比如 project.git , 命令行操作如下:

mkdir project.git
进入到该目录下,初始化git repository

cd project.git
git --bare init
可以看到,在当前目录下自动生成了多个文件

branches  config  description  HEAD  hooks  info  objects  refs

到这一步,git远程仓库已经搭建好了。

3.获取远程仓库地址

远程仓库的地址一般组成的格式是:

<用户名>@<服务器地址>:<仓库全路径>

用户名就是当前登录的账号的名称,比如我当前用的是 git账号,用户名就是git

服务器地址就是远程服务器的地址,比如 120.21.11.21

仓库全路径这个也不难理解,直接在project.git目录下输入pwd,获取project.git的全路径。

比如:

/home/git/gitRepository/pythonServer/project.git

那么整个远程仓库的地址就是:

git@120.21.11.21:/home/git/gitRepository/pythonServer/project.git

这个先记下来。


4.客户端工程初始化

在客户端新建工程project目录,进入该目录,创建README文件,往文件里面随便写一些东西。

mkdir project
cd project
touch README.md
echo "hello" >> README.md
5.客户端git初始化

如果客户端没有安装git的话也可以按照第一步的方式进行安装,安装好了之后,进入到project目录下,建立git本地仓库。

git init
本地仓库初始化提交。

git add README.md
git commit -m "init"

6.本地仓库与远程仓库绑定

故名思议,就是让本地的git仓库和远程的git仓库进行绑定。这里需要用到的是之前记下来的远程仓库的地址,也就是

root@120.21.11.21:/home/git/gitRepository/pythonServer/project.git

命令行的绑定方式是:

git remote add origin git@120.21.11.21:/home/git/gitRepository/pythonServer/project.git
到了这一步绑定已经成功了,这个时候我们已经可以使用git push 和git pull 进行上传和下拉了,但是你会发现使用上传下拉都需要输入一次远程服务器的密码,非常不方便。为了能免密码上传下拉,需要借助ssh协议。

7.生成客户端ssh公钥
git的远程推送功能需要用到ssh协议,linux自带ssh工具,可以很方便地满足我们的需求。

首先确认一下客户端本地是否已经存在ssh的公钥,可以直接输入

cat ~/.ssh/id_rsa.pub
如果返回了一串以ssh-rsa开头的字符串的话则说明之前已经存在公钥了,可以直接将这一串字符串复制下来。如果该条命令提示文件不存在或者是返回值为空的话,则需要创建公钥,只需要在命令行输入:
ssh-keygen
默认直接按回车,就会自动在~/.ssh/ 目录下创建id_rsa.pub,并且生成公钥,此时再用上面的方法,复制公钥。

8.服务端授权ssh公钥
接下来要做的是将客户端的公钥注册到服务端中,打开服务端控制台,输入:

cat "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9+VK1abwzJg+VjxGwpwKnsYU3eBEjXolQKUfKxEAMO9DREvdFrvIF5KhBE9HJTp7CEFcAfgP6xkJdxchQcEUyPyda9mIz6M4OOeuuLcxJcrqqJWTN0Jj78I/kDUZUJZF7bcV4q0CyeZG1fo5ckjxOmFaYkCGcq8vmeuFySFpco71UMkudzclrtGa53AvfmuOP1u96CEud78p2gYrPP5qr9ZYBNM+E290ddGMV61rnEiL7taAsXMGpuCQSbI0/zBJ3YXvN/lJSOVHFSeMFbKv7WDSJFSiBVHXjtcDa5RvzzWaFMBV8+SW4zluhijp6Dvb7pHBaLhLg/JvOixmR1/or OboBear" >> ~/.ssh/authorized_keys 
这双引号里面一大串的就是你之前复制的公钥,整句命令所做的事情就是将客户端的公钥添加到服务端的ssh授权表中。

9.客户端git推送
客户端终于可以进行免密码的上传了(push)和下拉(pull)了,回到客户端project目录下,进行第一次上传,输入:

git push -u origin master

如果最后没报错的话,就说明推送成功了。

10.测试获取

推送上去了,当然也要测试一下能不能获取下来。这个我们可以再建一个新的工程目录,比如:projectCopy

进入到该工程目录,输入:

git clone git@120.21.11.21:/home/git/gitRepository/pythonServer/project.git
如果能正常克隆下来的话,那么就恭喜了,git服务器一整套的内容全部走通了,接下来就可以享受私人的git服务了

版权声明:本文为博主原创文章,未经博主允许不得转载。

linux下搭建简单的git服务器

这两天沉迷php web服务器开发不能自拔,但是php和html、js之类的程序要写一点看一点效果,我是放到linux云主机上测试的,所以要在xshell上写代码,很麻烦。 于是想自己在云主机上搭建一...
  • qq_32685139
  • qq_32685139
  • 2016年09月03日 23:05
  • 8687

git 服务器+git linux客户端搭建

最近团队中在开发一些项目,由于代码经常改动,搞得头大,就想找个代码管理工具。查了一些资料,最后选择使用git管理代码,下面将搭建的过程记录下来与各位同仁分享。(亲测可以使用)一、准备工作服务器1:IP...
  • w12345_ww
  • w12345_ww
  • 2016年08月10日 22:13
  • 10827

linux中搭建git服务器

  • 2013年09月12日 13:27
  • 215KB
  • 下载

ubuntu完美搭建git服务器

最近公司项目需要用到Git来管理项目,正好逢周末花了点时间在虚拟机的unbuntu系统中搭建了下git的服务器,由于搭建过程中多多少少遇到了一些小问题,再因为个人记性不太好,所以在这里记录下来,以备不...
  • Tommy_wxie
  • Tommy_wxie
  • 2014年08月23日 17:07
  • 41592

Linux下搭建自己的Git服务器

首先需要装好CentOS系统,作为测试,你可以选择装在虚拟机上,这样比较方便。这步默认你会,就不讲了。 有了CentOS,那么如何搭建Git服务器呢? 1、首先需要安装Git,可以使用yum源在线...
  • sgrrmswtvt
  • sgrrmswtvt
  • 2017年09月06日 14:43
  • 313

Linux git服务器http方式搭建

Git访问方式:基于http的基本验证(非SSL) Apache的安装 1. 安装Apache软件:yum install httpd 2. 设置Apache在服务器启动时运行:chkconfi...
  • u013030980
  • u013030980
  • 2016年12月14日 11:25
  • 2350

在linux上搭建git服务器

在网上搜索了一些linux上搭建git服务器的文章,并搭建完成主要步骤我就不一一熬述了。推荐一篇比较简单的文章。http://developer.51cto.com/art/201507/483448...
  • wang124454731
  • wang124454731
  • 2017年02月13日 14:12
  • 276

Linux下配置自己的Git服务器

之前一直把自己的代码托管到github上面,但是有些代码是不希望被别人看到的,github的私人仓库每年要好几十$,没有办法,就想着自己构建一个Git服务器; 下面我就如何在linux下构建自己的gi...
  • tunrijituan
  • tunrijituan
  • 2017年03月11日 00:16
  • 327

Linux环境下的Git服务器配置

Linux环境下的Git服务器配置 跳转到: 导航, 搜索 目录  [隐藏]  1 安装Git -1.8.0(服务器端&客户端)2 生成客户端S...
  • cteng
  • cteng
  • 2014年12月17日 23:42
  • 748

centos6.7下搭建git服务器(2017最新版)

网上有很多centos搭建git服务器的教程,但很多都没有说清楚,导致我在安装的时候走了很多弯路。鉴于此,准备重新发个最新版的centos搭建git服务器,避免更多的人走弯路。...
  • QQ474949931
  • QQ474949931
  • 2017年01月04日 10:28
  • 390
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux搭建git服务器
举报原因:
原因补充:

(最多只允许输入30个字)