美文网首页管理经验积累
Linux搭建git服务器,自建仓库、本地和Windows下面c

Linux搭建git服务器,自建仓库、本地和Windows下面c

作者: seaflame | 来源:发表于2017-06-18 12:34 被阅读934次

1:首先我们在centos上面自己搭建git服务器,并初始化裸仓库

          安装git,可以使用yum源在线安装 

                        # yum install -y git

            创建一个git用户来运行git服务 

                          # adduser git

            并给用户添加密码 ,很多博客上面并没有添加密码这一项,不是的是不是因为版本的缘故,到 最后远程链接到仓库clone的时候,需要你输入密码,而且必须要有,不能为空,我就是一 直按 照博客上面操作并没有设置用户密码,走到最后本地clone时候一直不成功,也不知道什 么原因,最后实在没办法就试试设置用户密码,然后clone成功了 

                            #passwd git

            初始化仓库 ,先创建/home/data/git/目录放置git仓库并初始化

                        #mkdir -p /home/data/git

                        #cd /home/data/git

                        # git init --bare project.git

            执行以上命令 Git命令,会创建一个裸仓库,会生成branches  config  description  HEAD  hooks  index  info  objects  refs文件和目录。裸仓库没有工作区,因为服务器上的Git仓库纯  粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通                  常都以.git结尾。然后,把owner改为git

                    #chown -R git:git project.git

2:裸仓库建立好了,我们现在需要到客户端来进行clone,客户端与服务端进行远程链接需要创建  客户端登录证书,也就是创建ssh  key文件。这里需要说一下,Linux下面自带的 有客户端功 能, Windows需要下载客户端(我直接在百度软件管家里面下载的)。首先在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果  已 经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开客户端Git Bash),创 建SSH  Key(youremail@example.com也就是你自己的邮件地址):

  $ ssh-keygen -t rsa  -C"youremail@example.com"

          然后回车,存放密钥对的地址使用默认值路径

          查看Linux下面主目录有一个.ssh隐藏文件(Windows在c盘administrator下面),进去之后里面有  id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,id_rsa.pub 是 公 钥

          Git服务器打开RSA认证 ,进入到 /etc/ssh查看(cat)sshd_config内容有      1.RSAAuthentication yes  2.PubkeyAuthentication yes  3.AuthorizedKeysFile                                      .ssh/authorized_keys,说明公钥存放在.ssh/authorized_keys文件中,所以我们在/home/git下创 建.ssh目录(这里的。ssh文件和客户端存放密钥对文件不是同一个),然后创建                                authorized_keys文  件,并将刚生成的公钥导入进去(客户端的直接复制进去保存就可以)

                      # cd /home/git

                      # mkdir .ssh                                                        #cp -a ~/.ssh/id_rsa.pub /home/git/.ssh/authorized_keys

                                      #chmod755/home/git/.ssh/authorized_keys

3:客户端clone仓库

      在自己所需要的目录下面 (ip 是指链接服务器的IP ,/home/data/git/project.git仓库地址)

      执行          git clone git@ip:/home/data/git/project.git

      这里两点需要注意:第一,当你第一次使用Git的clone或者push命令连接仓库时,会得到一个警        告,这是因为Git使用SSH连接,而SSH连接在第一次验证Git服务器的Key时,需要你确认Git的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可,Git会输出一个警告,告诉你        已经把GitHub的Key添加到本机的一个信任列表里了

4:执行完之后查看执行clone命令的目录中有了一个project文件夹,到这里就完成了

相关文章

网友评论

  • ifredom1:各种抄
  • 4bddae7ac04b:我在云服务器上搭建了git的服务,在win上clone下来,仍要输入密码
  • _王子_:用心记录👍👍

本文标题:Linux搭建git服务器,自建仓库、本地和Windows下面c

本文链接:https://www.haomeiwen.com/subject/nvebqxtx.html