CentOS 6.7 Git 服务搭建及TortoiseGit配置连接

咳咳~好几天没写博文啦,这几天都在研究Git,没办法公司要要抛弃SVN转站Git,废话就不多说,下面我们进行操作演示:

环境:之前搭建的Redis-Master服务器一枚,配置一般般~

工具:TortoiseGit,传说中的小乌龟~

1、安装开发工具与依赖包

[[email protected]_master ~]# yum groupinstall "Development tools"            \\安装下开发工具,也不是一定要装,只不过自己习惯装起来
===============\\安装依赖包=====================
[[email protected]_master ~]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

2、安装Git

[[email protected]_master ~]# yum install git

3、创建Git用户

[[email protected]_master ~]# useradd git
\\切换到git,并且确保所在位置与用户名
[[email protected]_master ~]# su - git
[[email protected]_master ~]$ pwd
/home/git
[[email protected]_master ~]$ whoami 
git

\\查看.ssh是否存在,如果不存在请自行创建
[[email protected]_master ~]$ ls -a
.  ..  .bash_history  .bash_logout  .bash_profile  .bashrc  gitolite.tar.gz  .ssh  .viminfo

4、获取Git版本安装

[[email protected]_master ~]$ git clone 
[[email protected]_master ~]$ ls
gitolite.tar.gz                \\由于下载速度实在慢,本人使用了线上服务器download并打包传到自己的实验小鸡上面 
[[email protected]_master ~]$ tar xf gitolite.tar.gz     \\解压缩
[[email protected]_master ~]$ ls
gitolite  gitolite.tar.gz

=========创建用户家目录及安装gitolite
[[email protected]_master ~]$ mkdir $HOME/bin
[[email protected]_master ~]$ $HOME/gitolite/install -to $HOME/bin
[[email protected]_master ~]$ ls . bin/
.:
bin  gitolite  gitolite.tar.gz

bin/:
commands  gitolite  gitolite-shell  lib  syntactic-sugar  triggers  VERSION  VREF

5、配置Gitolite管理员

[[email protected]_master ~]$ ssh-keygen -t rsa  \\这条为ssh密钥生成命令,我这边已经有了就直接使用了

[[email protected]_master ~]$ /home/git/bin/gitolite setup -pk .ssh/id_rsa.pub    \\使用管理员公钥安装Gitolite
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/

6、生成管理员仓库gitolite-admin

[[email protected]_master ~]$ git clone [email protected]:gitolite-admin
Initialized empty Git repository in /home/git/gitolite-admin/.git/
The authenticity of host ‘127.0.0.1 (127.0.0.1)‘ can‘t be established.
RSA key fingerprint is 64:df:86:6c:e3:96:c3:52:80:a7:d8:af:27:4a:4c:80.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘127.0.0.1‘ (RSA) to the list of known hosts.
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (6/6), done.
[[email protected]_master ~]$ ls
bin  gitolite  gitolite-admin  gitolite.tar.gz  projects.list  repositories

7、了解gitolite-admin仓库配置及TortoiseGit安装及秘钥生成

[[email protected]_master ~]$ cd gitolite-admin/
[[email protected]_master gitolite-admin]$ ls conf/ keydir/ .git/
conf/:
gitolite.conf

.git/:
branches  config  description  HEAD  hooks  index  info  logs  objects  packed-refs  refs

keydir/:
id_rsa.pub

7.1 .git文件目录为git程序自动生成

7.2 conf名字上就知道是配置文件

7.3 keydir名字上也可以看出是存放key的文件目录

7.4 TortoiseGit安装及秘钥生成

7.2====================修改前============================
[[email protected]_master gitolite-admin]$ cat conf/gitolite.conf 
repo gitolite-admin            \\这里就是定义我们之前第6点讲到的生成管理员仓库
    RW+     =   id_rsa        \\该id_rsa是我们之前安装用到的id_rsa.pub也是我们用来管控的账号,给名字可以重取,比如按照编号之类的

repo testing                   \\testing为project,系统自动会建立的一个测试的仓库
    RW+     =   @all           \\该@all用过svn的知道,这是一个输出组
=====================修改后==============================
[[email protected]_master gitolite-admin]$ vim conf/gitolite.conf 

#############=====Groups======##################
   @dev_rw = sunshine         \\我新增的用户sunshine

repo gitolite-admin
    RW+     =   id_rsa

repo testing
    RW+     =   @all

repo dev
    RW+     =   @dev_rw        \\新增的输出组
7.3====================修改前============================
[[email protected]_master gitolite-admin]$ ls keydir/
id_rsa.pub                \\改名字我们可以自定义,在conf配置的用户就是去掉pub后的名称
=====================修改后==============================
[[email protected]_master gitolite-admin]$ ls keydir/
id_rsa.pub  sunshine.pub   \\该秘钥使用TortoiseGit中的PuTTYgen生成,下面会介绍

7.4 TortoiseGit的安装及秘钥生成

进入https://tortoisegit.org/download/官网下载对应版本

安装,就是下一步下一步。

7.4.1 使用PuTTYgen生成秘钥,点击Genetate

7.4.2 鼠标记得要在Please 下面的框框移来移去,不然你就等很久才能生成完毕,这类似我们生成Linux ssh生成敲打键盘一样

7.4.3

1、在key comment后面输入 sunshine

2、把public框框下面的公钥复制到我们之前在keydir目录下的sunshine.pub里面

[[email protected]_master gitolite-admin]$ cat keydir/sunshine.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAgKGrcRSPcJE0o37svz0DqncT0cTyI9oGv8mmI9z00wSMumAq82gFdHC0xpVeFcdZQfNM7bsZlxGskEF7/W7p6P4Dc0RCiArcYaSWd0sj1+16ZQADARjFVzf5OBzQNy6OSbAKub/LS1fnl4W7Ad1Mq7wCAVpXzPWVINB3gbzecFekUJ42quqXju+/MtVIfipmEvsJnsOtCfUg5sHUFL7d0dBNgYhXoFPtpuFKS7ay/1dE9JPu83jUB+WkjW/VRIIMrXpAhHVfZ0W25B4cVS04TeNZuLlxAa4HdsI/CbEckzxYvdFDgTPhTqiVTMOFJwhzzUFCxGNlge4vfh1sZP14Ew== sunshine

3、点击Save private key 保存到我们指定的目录

7.5 在服务端执行如下命令

[[email protected]_master gitolite-admin]$ git add conf/gitolite.conf              \\将gitolite.conf添加到暂存区
[[email protected]_master gitolite-admin]$ git add keydir                           \\将keydir添加到暂存区
[[email protected]_master gitolite-admin]$ git commit -m " New add sunshine.pub key and conf/gitolite.conf "    \\提交并说明内容
[master 9d8a7e7]  New add sunshine.pub key and conf/gitolite.conf
 Committer: git <[email protected]_master.(none)>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:

    git config --global user.name "Your Name"                               \\初次提价交要求填写相应用户名
    git config --global user.email [email protected]                           \\初次提交会要求填写Email地址

If the identity used for this commit is wrong, you can fix it with:

    git commit --amend --author=‘Your Name <[email protected]>‘

 2 files changed, 8 insertions(+), 0 deletions(-)
 create mode 100644 keydir/sunshine.pub
[[email protected]_master gitolite-admin]$ git config --global user.email "[email protected]"        \\全局填写用户名
[[email protected]_master gitolite-admin]$ git config --global user.name "sunshineboysfz"                    \\全局填写Email地址
[[email protected]_master gitolite-admin]$ git push                                                           \\同步到gitolite中的master去
Counting objects: 10, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 872 bytes, done.
Total 6 (delta 0), reused 0 (delta 0)
remote: Initialized empty Git repository in /home/git/repositories/dev.git/
To [email protected]:gitolite-admin
   2de3dc5..9d8a7e7  master -> master

7.6 TortoiseGit连接配置

1、在windows目录(自己指定的地方)新建一个目录

2、邮件该文件,点击Git克隆

3、填写相应的信息,并且在加载PuTTY秘钥加载7.4.3的第三点,就是自己保持的私钥文件。最后点击确定

至此,CentOS+TortoiseGit+gitolite就搭建好啦,其实服务搭建看看就会,主要是使用。

时间: 2024-12-16 23:13:33

CentOS 6.7 Git 服务搭建及TortoiseGit配置连接的相关文章

CentOS 6.5 GIT 服务器搭建

CentOS git 服务器搭建 1. 环境部署 系统环境: 服务器端:CentOS 6.5  ip: 192.168.0.74 2. 安装 2.1 服务器端: yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel vi /etc/yum.repos.d/epel.repo ------------------------------------------------------

Linux(CentOS)下NTP服务搭建

1.安装 CentOS默认会自动安装NTP服务.如果不确定是否安装了ntp软件包可以用命令rpm –qa|grep ntp 查询一下.如果没有安装,可以用命令yum install ntp安装一下,也可以从Centos安装盘安装(搭建简单yum源,安装光盘镜像做源). [[email protected] ~]# rpm -qa |grep ntp ntp-4.2.6p5-1.el6.centos.x86_64 fontpackages-filesystem-1.41-1.1.el6.noarc

CentOS 7.6 Telnet服务搭建(Openssh升级之战 第一任务备用运输线搭建)

(以下内容亲手完成,如果需要搬走记得把写博的小白的名字和邮箱一起搬走) 出来玩(学习),总是要还的! 有不明的问题的时候,都来博客园转转,总能找到答案或者灵感,开博3个月都没发一篇帖(不晓得管理员有何感想,不会封我的号吧),不能只是索取没有付出.小白一枚琢磨了半天才扒拉明白Telnet服务搭建(照葫芦画瓢,也要知道葫芦从哪里来的),去繁就简,简单整理一下,分享一下. Linux上的ssh那么好用为什么还要用Telnet这么老旧的东东呢? 最近被SSH 暴力枚举漏洞弄得头疼,奈何CentOS7最后

Git服务搭建教程

1.安装依赖库和编译工具 #yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y yum install gcc perl-ExtUtils-MakeMaker -y 2.选一个目录,用来放下载下来的安装包,这里将安装包放在 /usr/local/src 目录里,到官网找一个新版稳定的源码包下载到 /usr/local/src 文件夹里 官网https://git-scm.com/book/zh/

centos 7.0 NTP服务搭建

NTP服务时间同步 关闭防火墙和selinux或开启防火墙所有服务 [[email protected] ~]# firewall-cmd --set-default-zone=trusted NTP服务 [[email protected] ~]# yum –y install ntp [[email protected] ~]# cat /etc/ntp.conf                    //修改配置文件                             //定义本机与自

SVN服务搭建和与eclipse连接

SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? 它是一个自由/开源的版本控制系统,一组文件存放在中心版本库,记录每一次文件和目录的修改,Subversion允许把数据恢复到早期版本,或是检查数据修改的历史,Subversion可以通过网络访问它的版本库,从而使用户在不同的电脑上进行操作. 一:SVN服务器搭建和使用. 1.     首先来下载和搭

CentOS 6.5 rsync服务的安装与配置

一.rsync 简介 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录. Rsync 是用于取代rcp的一个工具,Rsync使用所谓的 "Rsync 算法" 来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快.您可以参考 How Rsync Works A Practical Overview 进一步了解

Git服务器搭建全过程分步详解

GitHub是一个免费托管开源代码的Git服务器,如果我们不想公开项目的源代码,又不想付费使用,那么我们可以自己搭建一台Git服务器. 下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无密码登陆 通过命令 sudo apt-get install openssh-server,安装SSH服务. 通过命令 ps –e|grep ssh,查看ssh服务

CentOS 7 Tomcat服务的安装与配置

3422人阅读 http://blog.51cto.com/13525470/2073657 一.Linux下的Java运行环境 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称.Java 技术具有卓越的通用性.高效性.平台移植性和安全性,广泛应用于个人PC.数据中心.游戏控制台.科学超级计算机.移动电话和互联网,同时拥有全球最大的