`

CentOS7安装git服务器

 
阅读更多

CentOS7安装git服务器

一、前言

 

二、搭建Git服务器

 

  • yum安装Git服务器

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

  • 创建客户端登录证书

  • 初始化Git仓库

  • 禁用shell登录

  • 克隆远程仓库

 

三、安装客户端

 

  • Windows 客户端

  • Linux 客户端

二、搭建Git服务器

 

1.yum安装Git服务器

[root@git ~]# yum install -y git

 


2.创建一个git用户并修改git的密码,用来运行git服务

 

[root@git ~]# adduser git

[root@localhost home]# passwd git
Changing password for user git.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost home]#

 

 


3.创建客户端登录证书

 

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

 

1).客户端生成id_rsa.pub文件的命令

 

xuecheng@yuxuecheng MINGW64 /d/git_local
$ ssh-keygen.exe -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/xuecheng/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/xuecheng/.ssh/id_rsa.
Your public key has been saved in /c/Users/xuecheng/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:1zr/MqdjFjowL1FeSwmonyhVENfydmSEpBOzt2Q8u+s xuecheng@yuxuecheng
The key's randomart image is:
+---[RSA 2048]----+
|      oo++.o.    |
|       .+*+ o    |
|       o+o*+ .   |
|      o  =+==    |
|     . oS=++..   |
|    . . *..oo    |
|     .   =+. .   |
|        . ++* .  |
|         oE+oB.  |
+----[SHA256]-----+

xuecheng@yuxuecheng MINGW64 /d/git_local
xuecheng@yuxuecheng MINGW64 ~
$ cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC8tg2eBatxK54P8RjpdSduK+E2WtO+A68Uu06WJUFCRO9u/C98MHK8N9vU4Hc85vO/gCpQ+t3ihgZ81IJ3mve2Zq2VGLq3uFo+FjGOBaIyK3ShXELizgWFKbaASbMR7Bm1iCM0C5Vuua1h5zXXbT8viXxNt43J1pOLTEOJmhDstvfPbLeU6Pme+wLMO5rV+iCJhRoqkd85SX7e7Sov6R63JMggEQaaN6BYQCv7qgM+ue08ElXj4cSSwA6KUtxgqfb3rT370QlC4QIr0aR4EKNfkLnZ58Yzym0hqUhnqv02zIPj60Zp/RbpZIC56Lur53Dq2G0gl+Thiqi8fVCngGcF xuecheng@yuxuecheng

注,一路回车即可,将生成的id_rsa.pub,复制给管理员,帮你在服务器上增加一下,下次你用git时就不需要输入用户名和密码了。

 

2).查看服务器上authorized_keys文件

 

[git@localhost .ssh]$ cat authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC8tg2eBatxK54P8RjpdSduK+E2WtO+A68Uu06WJUFCRO9u/C98MHK8N9vU4Hc85vO/gCpQ+t3ihgZ81IJ3mve2Zq2VGLq3uFo+FjGOBaIyK3ShXELizgWFKbaASbMR7Bm1iCM0C5Vuua1h5zXXbT8viXxNt43J1pOLTEOJmhDstvfPbLeU6Pme+wLMO5rV+iCJhRoqkd85SX7e7Sov6R63JMggEQaaN6BYQCv7qgM+ue08ElXj4cSSwA6KUtxgqfb3rT370QlC4QIr0aR4EKNfkLnZ58Yzym0hqUhnqv02zIPj60Zp/RbpZIC56Lur53Dq2G0gl+Thiqi8fVCngGcF xuecheng@yuxuecheng
[git@localhost .ssh]$

 

 

4.初始化Git仓库

 

注,先选定一个目录作为Git仓库,这里是/home/git/repo/trunk。

 

[git@localhost trunk]$ cd /home/git/repo/trunk

 

[git@localhost trunk]$ git init --bare
Initialized empty Git repository in /home/git/repo/trunk/

 

[git@localhost trunk]$ ls
branches  config  description  HEAD  hooks  info  objects  refs

 


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

 

[git@localhost repo]$ chown -R git:git trunk/
[git@localhost repo]$ ls
trunk
[git@localhost repo]$ cd trunk/
[git@localhost trunk]$ ll
total 16
drwxrwxr-x. 2 git git    6 Dec  2 09:14 branches
-rw-rw-r--. 1 git git   66 Dec  2 09:14 config
-rw-rw-r--. 1 git git   73 Dec  2 09:14 description
-rw-rw-r--. 1 git git   23 Dec  2 09:14 HEAD
drwxrwxr-x. 2 git git 4096 Dec  2 09:14 hooks
drwxrwxr-x. 2 git git   20 Dec  2 09:14 info
drwxrwxr-x. 4 git git   28 Dec  2 09:14 objects
drwxrwxr-x. 4 git git   29 Dec  2 09:14 refs

 


5.禁用shell登录

 

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

 

[root@git ~]# cat /etc/passwd | grep git

 

git:x:1001:1001:git version control:/home/git:/bin/bash

 

改为:

 

[root@git ~]# vim /etc/passwd

 

git:x:1001:1001:git version control:/home/git:/usr/bin/git-shell

 

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

 

6.克隆远程仓库

 

注,现在可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:

 

xuecheng@yuxuecheng MINGW64 /d/git_local
$ git clone git@192.168.56.102:/home/git/repo/trunk/
Cloning into 'trunk'...
The authenticity of host '192.168.56.102 (192.168.56.102)' can't be established.
ECDSA key fingerprint is SHA256:7NWrLoG3/WUzKUPuUpZIOOrNG/w3bRZ5joxxCq+A0D0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.56.102' (ECDSA) to the list of known hosts.
git@192.168.56.102's password:
warning: You appear to have cloned an empty repository.
Checking connectivity... done.

xuecheng@yuxuecheng MINGW64 /d/git_local

 

 

注,git clone git@192.168.56.102:/home/git/repo/trunk/,其中git是用户名,192.168.56.102是服务器IP地址,/home/git/repo/trunk/是仓库路径。好了,到这里服务器的搭建到这里就完成了。

 

git从已有文件初始化仓库

切换到用来创建仓库的根目录

  1. git init
  2. git add .
  3. git commit:提交
分享到:
评论

相关推荐

    CentOS7安装Git

    ### CentOS7安装Git知识点详解 #### 一、前言 在CentOS 7环境中安装Git是许多开发人员和系统管理员的必备技能之一。通过本文档,我们将详细介绍如何在CentOS 7系统上安装Git,包括从下载源码包到完成安装的整个...

    centos离线搭建git服务器(附教程,源码包)

    在本文中,我们将深入探讨如何在CentOS操作系统上离线搭建一个Git服务器,这是一个非常实用的技能,尤其对于那些网络环境有限或者希望在内部网络环境中管理代码仓库的开发者和团队而言。我们将使用Gogs作为Git服务的...

    CentOS下的Git服务器

    ### CentOS下的Git服务器:Gitosis 安装与配置详解 #### 一、Git与Gitosis简介 Git是一款非常流行的分布式版本控制系统,最初由Linux内核的开发者Linus Torvalds为了更好地管理Linux内核的开发而创建。Git因其高效...

    centos7安装部署gitlab服务器

    根据给定的信息,本文将详细解释如何在CentOS 7上安装和配置GitLab服务器,具体包括以下几个步骤:安装依赖软件、设置Postfix为GitLab提供邮件服务、下载并安装GitLab安装包以及最终的GitLab配置。 ### 一、安装...

    git服务器(centos)+客户端安装(tortoiseGit)_文档+安装包

    一、Git服务器安装(CentOS) 1. 更新系统: 在CentOS中,首先确保系统软件是最新的,执行以下命令: ``` sudo yum update ``` 2. 安装Git: 使用yum包管理器安装Git: ``` sudo yum install git ``` 3. 创建Git...

    centos中GIT服务器搭建及使用密钥连接.pdf

    本文将详细介绍如何在CentOS操作系统中搭建Git服务器以及如何通过SSH密钥实现安全连接,特别是针对Windows客户端的配置。 首先,我们需要在CentOS服务器上安装Git。可以通过`yum`包管理器来完成这一任务,执行`yum ...

    centos7一键搭建git

    Git是分布式版本控制系统,而CentOS 7是基于Red Hat的稳定企业级Linux发行版,因此这个脚本适用于那些在CentOS 7服务器上工作并需要使用Git进行代码管理的开发者。 现在,我们来看看压缩包内的文件“centos7一键...

    centos安装jdk、maven、git合集

    现在,你已经在CentOS 7.6上成功安装了JDK、Maven和Git。JDK用于编写和运行Java程序,Maven帮助管理和构建Java项目,而Git则为代码版本控制提供了强大的支持。这三者都是开发者和运维人员的必备工具,确保了高效的...

    在centos下搭建 git+gitolite 安装和部署

    讲速了 在centos 下搭建git服务器 用gitolite 来管理权限 很经典 值得拥有

    centos-git服务器搭建.doc

    centos_git服务器搭建 使用Git来部署一个Web站点笔记

    linux下搭建git服务器步骤

    ### Linux下搭建Git服务器步骤详解 #### 环境配置 - **服务器**: CentOS 6.6 + Git (version 1.7.1) - **客户端**: Windows 10 + Git (version 2.8.4.windows.1) #### 第一步: 安装Git 在服务器端与客户端上分别...

    详解在CentOS下搭建自己的Git服务器

    有了CentOS,那么如何搭建Git服务器呢? 1、首先需要安装Git,可以使用yum源在线安装: [root@localhost Desktop]# yum install -y git 2、创建一个git用户,用来运行git服务 # adduser git 3、初始化git仓库...

    git安装配置手册

    Git 安装配置手册是指在 CentOS 环境下安装和配置 Git 服务器的详细步骤,这篇手册将指导您从零开始安装和配置 Git 服务器,并掌握 Git 的基本概念和使用方法。 一、Git 服务器安装 Git 服务器的安装需要在 ...

    git服务器部署到centos

    git服务器的下载的安装包,详细的安装细节请baidu

    linux搭建git服务器

    ### Linux下搭建Git服务器知识点详解 #### 一、环境配置 **服务器端环境:** - 操作系统:CentOS 6.6 - Git版本:1.7.1 **客户端环境:** - 操作系统:Windows 10 - Git版本:2.8.4.windows.1 #### 二、Git的...

    git基础(git服务器搭建+git教程+git廖雪峰)

    1. **安装Git服务器**:在服务器上安装Git,通常使用`sudo apt-get install git`(Ubuntu/Debian)或`yum install git`(CentOS/RHEL)。 2. **初始化仓库**:在服务器上选择合适的位置创建空仓库,使用`git init --...

    阿里云Linux-CentOS系统下-搭建Git服务器详解

    主要介绍了 阿里云Linux-CentOS系统下-搭建Git服务器详解的相关资料,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics