首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Git shell没有启用吗?

Git shell没有启用吗?
EN

Server Fault用户
提问于 2011-06-29 14:43:07
回答 5查看 46.8K关注 0票数 27

我在试着安装git服务器。当我将git用户的默认shell设置为/usr/bin/ git时,在以git身份登录时会出现错误。

代码语言:javascript
运行
复制
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.

基于Ssh键的访问工作,权限设置正确。

Google搜索没有显示任何有关此错误的信息。

我在过去的安装中也使用了这个方法,并且没有显示这样的错误。此外,我还查看了工作服务器,如果它有一些额外的文件或配置,但没有这样的东西。

系统规范:

  • Gentoo linux (最新)
  • Git 1.7.5.3

/etc/passwd线:

代码语言:javascript
运行
复制
git:x:1002:1004::/home/git:/usr/bin/git-shell
EN

回答 5

Server Fault用户

发布于 2011-10-27 20:22:33

我在运行locate git-shell-commands后发现了这个

cat /usr/share/doc/git-1.7.4.4/contrib/git-shell-commands/README示例程序可通过git-shell调用。将名为“git-shell -命令”的目录放在shell为git的用户的主目录中。然后,任何以用户身份登录的人都可以在‘git-shell-命令’目录中运行可执行文件。提供的命令:帮助:打印出可用命令的名称。当以交互方式运行时,git-shell将在启动时自动运行“帮助”,只要它存在。list:在用户的主目录下显示名称以".git“结尾的任何裸存储库。没有其他git存储库是可见的,尽管它们可能通过git-shell是可复制的。“list”的设计是为了尽量减少在查找可用存储库时对git的调用次数;如果您的安装程序有其他可以被用户发现的存储库,您可能希望相应地修改'list‘。

因此,我以root用户的身份运行了以下命令:

代码语言:javascript
运行
复制
cp /usr/share/doc/git-1.7.4.4/contrib/git-shell-commands /home/git -R
chown git:developers /home/git/git-shell-commands/ -R
chmod +x /home/git/git-shell-commands/help
chmod +x /home/git/git-shell-commands/list
exit

然后,我能够以git用户的身份运行以下操作:

代码语言:javascript
运行
复制
[me@svn ~]$ su git
Password:
Run 'help' for help, or 'exit' to leave.  Available commands:
list
git> help
Run 'help' for help, or 'exit' to leave.  Available commands:
list
git> list
git> exit

现在我看不出有什么好的帮助和列表,但登录有效。:)

票数 19
EN

Server Fault用户

发布于 2013-10-31 22:48:31

我只需要做# mkdir ~git/git-shell-commands,然后su gitgit 1.8.1.5-r1工作

票数 6
EN

Server Fault用户

发布于 2011-07-01 12:15:54

如果您的看看代码触发了该错误消息(在较早版本的Git中,该好像不一样 ):

代码语言:javascript
运行
复制
if (access(COMMAND_DIR, R_OK | X_OK) == -1) {
  die("Interactive git shell is not enabled.\n"
     "hint: ~/" COMMAND_DIR " should exist "
     "and have read and execute access."); 

这应该是git-shell目录中的一个正确问题。

用户必须具有对目录的读取和执行权限,才能执行目录中的程序。

票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/285324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档