Git 将某些命令分配给用户

Git 将某些命令分配给用户,git,ubuntu,command,sudoers,Git,Ubuntu,Command,Sudoers,我只想让“git”用户能够运行git命令,我使用sudovisudo编辑了我的sudoers文件并添加了 # Cmnd alias specification Cmnd_Alias GIT_CMDS = /usr/bin/git # User privilege specification root ALL=(ALL:ALL) ALL git ALL=(ALL) NOPASSWD: GIT_CMDS 当我尝试从git用户运行git命令时,我得到一个错误,说我没有正确的访问权限。 如何解

我只想让“git”用户能够运行git命令,我使用
sudovisudo
编辑了我的sudoers文件并添加了

# Cmnd alias specification
Cmnd_Alias GIT_CMDS = /usr/bin/git

# User privilege specification
root    ALL=(ALL:ALL) ALL
git ALL=(ALL) NOPASSWD: GIT_CMDS
当我尝试从git用户运行git命令时,我得到一个错误,说我没有正确的访问权限。 如何解决此问题?

“访问权限”可能不同于“命令执行权限”

git仍然可以运行git命令,但可能无法更新不属于git/git组的文件夹

这就是为什么您会有像“”这样的问题,以便允许

 sudo -u www-data git <a command>
sudo-u www-data-git
在您的情况下,由于您已指定了
(ALL)
,如果您更改了与用户关联的组,则在非
git所有的文件夹中以
git
的形式运行命令时,请使用正确的
sudo-u
检查您的访问错误是否消失,您是否注销并再次登录以便应用新组?@jdv-yup,在我使用root用户进行编辑后,我将su插入git-userWait。你的问题与你想做的不匹配。您是否只希望以这种方式管理git用户或git组的成员?我希望以这种方式管理git用户您应该更改此问题。你说的是“用户组”,这让人困惑。