当前位置:   article > 正文

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

连接自己服务器的git仓库

一、服务器端(Ubuntu

第一步,安装git:

$ sudo apt-get install git
  • 1

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

$ sudo adduser git
  • 1

第三步,登录

  • 公钥登录(免密码):

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

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

第四步,初始化Git仓库:

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

$ sudo git init --bare sample.git
  • 1

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

$ sudo chown -R git:git sample.git
  • 1

第五步,禁用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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/403097
推荐阅读
相关标签
  

闽ICP备14008679号