最简git服务器搭建步骤和自动化部署脚本

简介:

git是一个开源的版本管理软件,通过git可以方便地进行软件的协同开发、历史回溯等,下面是一个最简单的git服务器搭建和测试步骤,为了方便,后面还有一个一键自动化搭建的脚本。前提是对git有一定了解,并且已经安装好git。

一、最简git服务器搭建和测试

服务端搭建:

说明:搭建一个空的hello.git的远程仓库(ip:192.168.1.155)

1.添加git用户

sudo useradd -m git

sudo passwdgit

su git

2.进入/home/git并初始化空的仓库,结果如图1所示,创建了一个名为hello.git的代码仓库

cd /home/git

git init --bare hello.git

图1 hello.git代码仓库

客户端测试:

说明:初始化一个本地仓库,然后推送到服务端

1.新建一个hello的目录,并写一段helloworld的代码

2.在hello目录下创建一个git仓库,并提交一次

git init

git add --all

git commit

3.添加远程代码仓库

git remote add origingit@192.168.1.155:/home/git/hello.git

4.推送master分支到远程,执行结果如图2所示,服务端多了一个master分支

git push origin master

图2 客户端测试流程

5.到另外一个目录下克隆远程仓库

git clonegit@192.168.1.155:/home/git/hello.git

二、最简git服务器自动化搭建脚本

说明:创建git仓库并搭建一个空的hello.git的远程仓库(ip:192.168.1.155)

脚本源码:

gitnew.sh:

#!/bin/sh

parmNum=$#

if [ $parmNum -eq 0 ];then

        echo "Run as:"

        echo "1.Create git account and repertory: ./gitnew.sh repertory"

        echo "2.Create git account only: ./gitnew.sh null"

        exit

fi

repertory=$1

echo "[$0]:Add git account:"

sudo useradd -m git

echo "[$0]:Passwd git account:"

sudo passwd git

if [ $repertory != "null" ];then

        cd /home/git

        repertory_git="$repertory.git"

        echo "[$0]:Create $repertory_git"

        sudo git init --bare $repertory_git

        sudo chown -R git:git $repertory_git

        cd -

fi

echo "[$0]:Enjoy"

运行结果:

脚本运行完成之后,如图3所示,创建好了一个hello.git的远程仓库,跟上面的一模一样。

图3 自动化脚本创建代码仓库

三、解决客户端推送和克隆要输入服务端git登录密码的问题

1.在服务端/home/git目录下新建一个.ssh目录

mkdir .ssh

2.在.ssh目录下新建一个authorized_keys文件

touch authorized_keys

3.把客户端的ssh公钥写到authorized_keys文件中,一行一个

echo **** >>authorized_keys

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 软件需求:Git-core,gitosis, openssh-server, git-daemon-run(ubu...
    BUG弄潮儿阅读 6,488评论 0 0
  • gitosis: 把所有用户的公钥保存在 authorized_keys 文件的做法,只能凑和一阵子,当用户数量达...
    晓蜻蜓阅读 11,169评论 2 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,491评论 19 139
  • git服务器搭建过程 参考网上资料搭建git服务器过程记录 如下: 需求 硬件需求:一台Ubuntu或者debia...
    廖全磊LesterLiao阅读 4,731评论 0 1
  • 这些天,于我,如鱼刺卡在喉咙,咽不下,吐不出。但这毕竟不是结果,所以,再一次,"厚着脸皮"找你谈,一为这磕磕碰碰的...
    染坊阅读 2,256评论 0 2