在服务器上搭建自己的Git仓库(摘录整合)

一、服务器端(Ubuntu)

第一步,安装git:

$ sudo apt-get install git

第二步,创建一个git用户,用来运行git服务:

$ sudo adduser git

第三步,登录

  • 公钥登录(免密码):

收集所有需要登录的用户的公钥,就是他们自己的 id_rsa.pub 文件,把所有公钥导入到 /home/git/.ssh/authorized_keys 文件里,一行一个。

  • 密码登录:使用第二部创建的Git用户的密码登录仓库。

第四步,初始化Git仓库:

先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:

$ sudo git init --bare sample.git

Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:

$ sudo chown -R git:git sample.git

第五步,禁用shell登录:(可选)

出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

二、本地端生成公钥(可以免密码)

Windows端:

1,直接用git shell(github自带的工具)

  1. 键入命令:ssh-keygen -t rsa -C “email@email.com”

    “email@email.com”是github账号

  2. 提醒你输入key的名称,你可以不用输入,直接3个回车,就OK了;

  3. 在 C:\Documents and Settings\Administrator.ssh\ 下产生两个文件:id_rsa和id_rsa.pub

  4. 用记事本打开id_rsa.pub文件,复制内容,再执行服务器端第三步。

Linux端 :
  1. 在Ubuntu下生成公钥

[chenlb@A ~]$ ssh-keygen -t rsa -P ”

-P表示密码,-P ” 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。
它在/home/用户目录下生成.ssh目录,.ssh下有 id_rsa (这个是私钥)和 id_rsa.pub(这个是公钥)。

  1. 把ubuntu的 id_rsa.pub 的内容复制centos下用户家目录下的 .ssh/authorized_keys 文件里如:
    想无密码登录root用户就复制到 /root/.ssh/authorized_keys
    想无密码登录其他用户就复制到 /home/用户/.ssh/authorized_keys

复制方法把比较多这举一个例子用scp

在ubuntu下

scp .ssh/id_rsa.pub
root@服务器IP:/对应文件夹/id_rsa.pub

在centos下

cat /对应文件夹/id_rsa.pub >> .ssh/authorized_keys

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值