×

gogs迁移至CentOS 群晖gogs迁移 gogs报错cannot run hooks/pre-receive

gogs迁移后git push时报错cannot run hooks/pre-receive

mtsym mtsym 发表于2019-05-04 17:02:07 浏览5332 评论0

抢沙发发表评论

之前我的git服务gogs是部署在家里的群晖NAS上的,由于有几台云主机闲着,于是我就把gogs迁移一份过去,相当于做个备份,gogs迁移过程很简单,直接把数据打包过去,然后在CentOS上下载最新的gogs进行配置然后就可以了,启动之后发现能pull代码,但是不能push,一直报错

error: cannot run hooks/pre-receive: No such file or directoryremote: hooks/pre-receive: line 2: /app/gogs/gogs: No such file or directory
To ssh://gogs.11000011.com/agcdefg.git

看描述是pre-receive文件报错不存在/app/gogs/gogs目录,于是我随便进入一个项目查看hooks下面的pre-receive文件,如下

│#!/usr/bin/env bash
"/app/gogs/gogs" hook --config='/data/gogs/conf/app.ini' pre-receive

之前的gogs是跑在docker环境下的,迁移的CentOS是6.8版本的,由于对docker支持不过好,直接用的gogs的二进制版本,所以配置产生了差异,解决办法

1. 创建文件/app/gogs/gogs并让git用户可读写
2. 创建链接ln -s xxx/app.ini /data/gogs/conf/app.ini

群贤毕至

访客