По какой-то причине мой гитолит не пришел с образцовым конфигурационным файлом, и я не могу найти его нигде, я уверен, что на этот вопрос будет дан ответ в этом файле, если кто-то найдет мне копию , пожалуйста!!, пожалуйста, помогите мне разобраться с пользователями gitolite
В любом случае, формат файла gitolite конфигурации достаточно прост, вот лоскут из шахты
gitolite conf
# please see doc/gitolite.conf.mkd for details on syntax and features
@nmscDevs = [email protected] [email protected] [email protected]
@buildMgr = [email protected] [email protected]
repo gitolite-admin
RW+ = gitadmin [email protected]
repo grindstone
RW+ = gitadmin
RW+ prod$ = @buildMgr
- prod$ = @nmscDevs
RW = @nmscDevs
У меня есть несколько открытых ключей в моей папке keydir:
keydir/
gitadmin.pub
[email protected]
Моя проблема gitolite похоже, игнорирует разрешения, установленные для отдельных пользователей. ничего не работает в репозитории (читает, записывает и т. д.), если я не дам пользователю gitadmin полный контроль. Тогда кажется, что каждый использует разрешения пользователя gitadmin. Я клонировать операции РЕПО как этот
git clone [email protected]:grindstone.git
, но когда я пытаюсь клонировать с чем-то вроде этого
git clone '[email protected]'@server:grindstone.git
Im запрос с помощью пароля. требуется ли каждому отдельному пользователю иметь учетную запись на сервере, чтобы они могли ssh в нее?
Как именно разрешения работают в гитолите? Мне было понято, что пользователю git нужна учетная запись ssh на сервере, а затем, когда gitolite берет на себя, использует электронную почту, которая передается вместе с запросом git для определения разрешений, я здесь не прав? что мне не хватает?
Кстати, вот мой .ssh/конфигурации
host server
user git
hostname server
identityfile ~/.ssh/gitadmin
host server
user [email protected]
hostname server
identityfile ~/.ssh/id_rsa
Update: Я обновлен до последней версии gitolite, когда я пытаюсь сделать клон я получить это
$ git clone [email protected]:testing.git
Cloning into 'testing'...
FATAL: R any testing gitadmin DENIED by fallthru
(or you mis-spelled the reponame)
fatal: The remote end hung up unexpectedly
мой Файл конфигурации теперь выглядит так:
repo testing
RW+ = william_slepecki
и мой .ssh config не изменился. кроме того, у меня есть это в моем журнале
2012-05-08.13:01:13 19027 ssh ARGV=gitadmin SOC=git-upload-pack 'testing.git' FROM=10.99.5.146
2012-05-08.13:01:13 19027 access(testing, gitadmin, R, 'any'),-> R any testing gitadmin DENIED by fallthru
2012-05-08.13:01:13 19027 trigger,Writable,access_1,ACCESS_1,testing,gitadmin,R,any,R any testing gitadmin DENIED by fallthru
и вот верхний надрез моей глобальной мерзавца конфигурации
[user]
name = Willie Slepecki
email = [email protected]
почему в мире это по-прежнему настаивает, что gitadmin быть на репо и почему это не использование william_slepecki? где именно это получает имя для использования?
Вы потрудились прочитать обширную [гитолитную документацию] (http://sitaramc.github.com/gitolite/master-toc.html)? Кроме того, [Stack Overflow не является «catch-all»] (http://meta.stackexchange.com/a/128577/183347) – KurzedMetal
У меня есть, но это не объясняет, почему ничего не работает, если я не дам полный контроль gitadmin of repo – scphantm
Пожалуйста, избегите любых '@' в имени пользователя. Или попробуйте его закодировать (% 40). Но я бы все же избегал этого вообще. Какую версию гитолита вы используете? – VonC