一、 概述
在群晖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
注意:本文归作者所有,未经作者允许,不得转载
原文地址: http://blog.wsmee.com/post/91
版权声明:非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0