Redmine 无法从本地 git 实验室服务器看到 git 回购
Redmine can't see git repo from local gitlab server
我正在使用 centos 7、gitlab-ce 和 redmine 设置虚拟机。一切都已安装并且 运行,但我无法设置集成:当我尝试访问 http://redmine/projects/myproject/repository 时,它显示了(in)著名的消息:
404 The entry or revision was not found in the repository.
Apache 的错误日志 (/var/log/htttpd/error_log) 说:
App 3122 stderr: fatal: Not a git repository: '/var/opt/gitlab/git-data/repositories/mygroup/myproject.git'
这是项目的正确路径。按照用户@sk1p 在 https://serverfault.com/questions/565030/redmine-not-finding-my-git-repo-on-debian-7-3 中发布的提示,我收到了 "permission denied" 条消息。
所以这是我的问题:我害怕更改这些目录权限并使一切变得不安全。我的 apache 用户只能打开 /var/opt/gitlab:
bash-4.2$ cd /var/opt/gitlab
bash-4.2$ ls -la
total 16
drwxr-xr-x. 11 root root 4096 Jul 17 16:12 .
drwxr-xr-x. 3 root root 19 Jul 17 10:17 ..
drwx------. 2 git root 41 Jul 23 14:57 backups
-rw-------. 1 root root 38 Jul 17 10:18 bootstrapped
-rw-r--r--. 1 git git 264 Jul 17 16:12 .gitconfig
drwx------. 4 git root 49 Jul 17 10:17 git-data
drwxr-xr-x. 7 git root 82 Jul 27 10:04 gitlab-rails
drwx------. 2 git root 49 Jul 17 10:17 gitlab-shell
drwx------. 3 root root 45 Jul 17 10:18 logrotate
drwxr-x---. 8 root gitlab-www 4096 Jul 28 09:09 nginx
drwxr-xr-x. 3 gitlab-psql root 77 Jul 28 09:09 postgresql
drwxr-x---. 2 gitlab-redis git 57 Jul 28 09:19 redis
drwx------. 2 git git 55 Jul 17 16:06 .ssh
bash-4.2$ cd git-data/
bash: cd: git-data/: Permission denied
bash-4.2$ cd git-data/repositories/mygroup/myproject.git
bash: cd: git-data/repositories/mygroup/myproject.git: Permission denied
以 root 身份浏览目录,这些是项目目录的权限:
[root@srv mygroup]# ls -l
total XX
(...)
drwxrwxrwx. 6 git git 4096 Jul 28 07:48 myproject.git
如您所见,我尝试了 777ing 整个过程。没有成功。我稍后会回复它,保证。我还尝试将 apache 用户添加到组中:
[root@srv mygroup]# groups apache
apache : apache root git
那么我怎样才能让它正确呢?我确实尝试在网上搜索解决方案(实际上从昨天开始就在做),我还没有尝试过的事情是将 repo chowning 到 apache.apache,因为我担心它会破坏 gitlab 的某些东西。
抱歉我的英语不好。 =]
我找到了不同的解决方案。我不认为它是最佳的,我仍在寻找更好的方法,但这是我所做的:
http://www.redmine.org/projects/redmine/wiki/HowTo_Easily_integrate_a_%28SSH_secured%29_GIT_repository_into_redmine explaining how to integrate a git repo to redmine using ssh. This guide creates just a "mirror" of each repo, so I hope it doesn't consume much space (I'll find out soon). I got some trouble to create my apache user's ssh key and authenticate, but this other troubleshoot (Gitlab prompts for password while push for git user 上有一个指南,@VonC 提示)对我帮助很大。
我正在使用 centos 7、gitlab-ce 和 redmine 设置虚拟机。一切都已安装并且 运行,但我无法设置集成:当我尝试访问 http://redmine/projects/myproject/repository 时,它显示了(in)著名的消息:
404 The entry or revision was not found in the repository.
Apache 的错误日志 (/var/log/htttpd/error_log) 说:
App 3122 stderr: fatal: Not a git repository: '/var/opt/gitlab/git-data/repositories/mygroup/myproject.git'
这是项目的正确路径。按照用户@sk1p 在 https://serverfault.com/questions/565030/redmine-not-finding-my-git-repo-on-debian-7-3 中发布的提示,我收到了 "permission denied" 条消息。
所以这是我的问题:我害怕更改这些目录权限并使一切变得不安全。我的 apache 用户只能打开 /var/opt/gitlab:
bash-4.2$ cd /var/opt/gitlab
bash-4.2$ ls -la
total 16
drwxr-xr-x. 11 root root 4096 Jul 17 16:12 .
drwxr-xr-x. 3 root root 19 Jul 17 10:17 ..
drwx------. 2 git root 41 Jul 23 14:57 backups
-rw-------. 1 root root 38 Jul 17 10:18 bootstrapped
-rw-r--r--. 1 git git 264 Jul 17 16:12 .gitconfig
drwx------. 4 git root 49 Jul 17 10:17 git-data
drwxr-xr-x. 7 git root 82 Jul 27 10:04 gitlab-rails
drwx------. 2 git root 49 Jul 17 10:17 gitlab-shell
drwx------. 3 root root 45 Jul 17 10:18 logrotate
drwxr-x---. 8 root gitlab-www 4096 Jul 28 09:09 nginx
drwxr-xr-x. 3 gitlab-psql root 77 Jul 28 09:09 postgresql
drwxr-x---. 2 gitlab-redis git 57 Jul 28 09:19 redis
drwx------. 2 git git 55 Jul 17 16:06 .ssh
bash-4.2$ cd git-data/
bash: cd: git-data/: Permission denied
bash-4.2$ cd git-data/repositories/mygroup/myproject.git
bash: cd: git-data/repositories/mygroup/myproject.git: Permission denied
以 root 身份浏览目录,这些是项目目录的权限:
[root@srv mygroup]# ls -l
total XX
(...)
drwxrwxrwx. 6 git git 4096 Jul 28 07:48 myproject.git
如您所见,我尝试了 777ing 整个过程。没有成功。我稍后会回复它,保证。我还尝试将 apache 用户添加到组中:
[root@srv mygroup]# groups apache
apache : apache root git
那么我怎样才能让它正确呢?我确实尝试在网上搜索解决方案(实际上从昨天开始就在做),我还没有尝试过的事情是将 repo chowning 到 apache.apache,因为我担心它会破坏 gitlab 的某些东西。
抱歉我的英语不好。 =]
我找到了不同的解决方案。我不认为它是最佳的,我仍在寻找更好的方法,但这是我所做的:
http://www.redmine.org/projects/redmine/wiki/HowTo_Easily_integrate_a_%28SSH_secured%29_GIT_repository_into_redmine explaining how to integrate a git repo to redmine using ssh. This guide creates just a "mirror" of each repo, so I hope it doesn't consume much space (I'll find out soon). I got some trouble to create my apache user's ssh key and authenticate, but this other troubleshoot (Gitlab prompts for password while push for git user 上有一个指南,@VonC 提示)对我帮助很大。