群晖NAS上搭建 Git Server

小豆苗 1年前 ⋅ 12169 阅读

一、 概述
        在群晖nas上使用 git server 套件还是比较麻烦的,原因有两点:一是NAS的控制台上没有BASH,git 相关的命令只能使用 SSL 客户端连接到NAS上进操作。二是配置git时需要使用 root 或 admin 账户,而 push / fetch 使用的账户一般都为普通用户,权限问题需要注意。群晖NAS上提供的 git server 套件比较简陋,使用手册也不够详细。新用户再加上对 git 命令不熟悉等问题,常在此花费大量时间。为此,将在群晖NAS上搭建 git server 的方法整理如下,以备参考。

二、 事前准备
        群晖 Synoogy NAS DS220+
        SSH客户端,本文以 putty 为例
        本地电脑上安装 git 软件
        拥有NAS的管理员账户
三、 配置NAS
        将客户电脑和群晖NAS连接到同一个局域网。本文中是连接到同一个路由器,并为NAS设置了固定IP地址:192.168.x.x

四、 配置

1.首先在群晖的DSM的控制面板中创建一个用户例如是Git_test(我给了管理员权限)

2.在套件中心安装 Git server

3.打开Git server 勾选用户 Git_test

4.在控制面板的“终端机和SNMP”中启动SSH功能

5.在控制面板的共享文件夹中创建一个文件夹,例如 "GitRepo",也就是仓库

6.然后再File station 中在GitRepo下创建一个项目文件夹,例如"project1"

7.在windows中打开Git bash控制台

8.登录到NAS的Git server(输入Git_test的密码):
ssh Git_test@192.168.1.104 #我的是在局域网中

8.然后cd到project1下:
cd /volume1/GitRepo/project1 #volume1是默认的

9.初始化git:
git init --bare

10.使用 cd .. 命令返回到 GitRepo目录

11.更改project1的权限以便其他的用户访问 (例如在NAS中有另外一个用户whlook)
sudo chown -R whlook:user project1 #user 是whlook所在的用户组
  另外其他的修改文件夹权限的:
chmod -R 775 project1/ #设定读写权限的指令
chgrp -R users project1/# 设定拥有权限的群组的指令

12.然后可以退出这个Git_test账户或者直接关闭Git bash了

13.接着打开Git bash,将刚刚的project1克隆到本地:
git clone whlook@192.168.1.104:/volume1/GitRepo/project1/

14.cd 到project1目录下,然后打开project1目录新建一个文件比如 "test.txt",然后在bash中输入:
git status #检测状态
git add test.txt #添加到缓存区
git commit -m"test" #添加到本地仓库
git push #上传到NAS


全部评论: 0

    我有话说: