ZhiBing's blog(码上看世界) ZhiBing's blog(码上看世界)
首页
  • Linux工具链

    • shell命令
  • 构建

    • CMake
    • Makefile
  • 版本管理

    • Git
    • Github
  • IDE及工具

    • vscode
    • CLion
  • 设计模式

    • 设计原则
  • 编程语言

    • C++
    • Go
    • Python
    • Shell
  • 调试

    • gdb
  • 开发者测试

    • gtest
  • 系统支撑

    • 操作系统
  • 性能优化

    • 编译优化选项
    • perf
    • valgrind
  • 容器

    • Docker
  • 微服务

    • Rancher
  • 其他
  • 随笔
  • 友情链接
收藏
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)

ZhiBing Zheng

时间会回答成长
首页
  • Linux工具链

    • shell命令
  • 构建

    • CMake
    • Makefile
  • 版本管理

    • Git
    • Github
  • IDE及工具

    • vscode
    • CLion
  • 设计模式

    • 设计原则
  • 编程语言

    • C++
    • Go
    • Python
    • Shell
  • 调试

    • gdb
  • 开发者测试

    • gtest
  • 系统支撑

    • 操作系统
  • 性能优化

    • 编译优化选项
    • perf
    • valgrind
  • 容器

    • Docker
  • 微服务

    • Rancher
  • 其他
  • 随笔
  • 友情链接
收藏
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)
  • 其他

    • 安装 mariadb 数据库
    • 创建自己的jekyll主题
    • 搭建私有云盘
    • 搭建Git服务器
      • 安装 Git
      • 创建 Git 用户组和用户
      • 禁止 Git 用户 Shell 登录
      • 创建认证公钥文件
      • 初始化 Git 空仓库
      • 远程同步
      • 脚本
    • Linux开放端口
    • 内核链表
    • 树莓派4安装k3d
    • 树莓派4安装k3s
    • 树莓派4更换镜像源
    • 树莓派4设置静态IP
    • 树莓派安装docker
    • 远程连接mariadb数据库
    • Latex
    • mac安装jekyll
    • docker + nextcloud 搭建私有云(Linux)
    • nginx使用自签名SSL证书
    • raspbian-buster-lite安装桌面
    • ubuntu18.04 + jekyll 搭建个人博客站
    • Ubuntu刷新DNS缓存
    • wsl后台运行程序
    • xshell script api
    • HPE gen10 plus 安装telsa P4驱动
    • HPE gen10 plus 安装ESXI 7
    • ESXI 7安装黑群晖
    • ESXI 7安装win10
  • 随笔

  • 专题

  • 友情链接
  • 更多
  • 其他
zhengzhibing
2022-06-16
目录

搭建Git服务器

# 搭建 Git 服务器

在 ubuntu18.04 上搭建 Git 服务器。

# 安装 Git

sudo apt-get install git openssl
1

# 创建 Git 用户组和用户

sudo groupadd git
sudo useradd git -g git
1
2

# 禁止 Git 用户 Shell 登录

sudo vim /etc/passwd
# git:x:1000:1000::/home/git:/bin/sh => git:x:1000:1000::/home/git:/usr/bin/git-shell
1
2

# 创建认证公钥文件

# 创建git用户目录
cd /home
sudo mkdir git
sudo chown git git
sudo chgrp git git
cd /home/git
sudo mkdir .ssh && cd .ssh
sudo touch authorized_keys
sudo chmod 644 authorized_keys
# 将自己本地的公钥复制到authorized_keys中去
1
2
3
4
5
6
7
8
9
10

# 初始化 Git 空仓库

cd /home/git
sudo mkdir tony # 创建一个目录作为Git仓库集
sudo chown git:git tony
sudo ln -s /home/git/tony /tony
# 这是为了使clone的地址短一些。
# git clone git@xx.xx.xx.xx:/tony/demo.git
# 而不是
# git clone git@xx.xx.xx.xx:/home/git/tony/demo.git

#初始化git空仓库
cd /repos
sudo git init --bare demo.git
sudo chown -R git:git demo.git
1
2
3
4
5
6
7
8
9
10
11
12
13

# 远程同步

# 前提:本地公钥已经复制到了服务器中的/home/git/.ssh/authorized_keys中
# 本地创建demo.git
mkdir demo && cd demo
git init
git remote add origin git@xx.xx.xx.xx:/tony/demo.git
git add .
git commit -m "init"
git push -u origin master
1
2
3
4
5
6
7
8

# 脚本

使用脚本提高效率

#!/bin/bash
# 创建git空仓库
cd /tony
repo_name=$1".git"
git init --bare ${repo_name}
chown -R git:git ${repo_name}
1
2
3
4
5
6
#!/bin/bash
# 删除git仓库
cd /tony
repo_name=$1".git"
sudo rm -rf ${repo_name}
1
2
3
4
5
#Git#搭建
上次更新: 2022/06/17, 07:22:19
搭建私有云盘
Linux开放端口

← 搭建私有云盘 Linux开放端口→

最近更新
01
HPE gen10 plus 安装ESXI 7
06-12
02
ESXI 7安装黑群晖
06-12
03
ESXI 7安装win10
06-12
更多文章>
Theme by Vdoing | Copyright © 2022-2024 ZhBing Zheng | 粤ICP备2022062743号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式