Использование го языка с гитолитом
Знаете ли вы, как использовать Google Go Языки умный получить команду с Gitolite? Он прекрасно работает с Google Code и Github следующим образом:
перейти получить code.google.com/p/go.example/hello
или же
иди получить github.com/alphazero/Go-Redis
Но мой доступ к Gitolite больше похож на:
мерзавец клон мерзавец @mygitolite: мой проект
Какие-либо предложения?
2 ответа
Это не имеет ничего общего с гитолитом.
Gitolite - это просто слой авторизации, который будет принимать или отклонять ваши git clone/push/pull
Команда, в зависимости от вашего имени пользователя.
Если вы можете объявить git-репо как источник для go, вы можете использовать его.
Gitolite просто проверит, кто вы, но никак не повлияет на использование этого репо с go.
Peter Krnjevic уточняет вопрос:
Дело в том, что go извлекает имя репо из структуры каталогов, например:
~/gocode/src/github.com/me/myproject
автоматически преобразуется в
git clone github.com/me/myproject.
Но как можно преобразовать имена гитолитов в путь?
Я не думаю, что вам нужно что-то преобразовывать: если go может связаться с вашим git-репо (GitHub или любым другим сервером репозитория хостинга), gitolite перехватит команду и проверит ее (или откажет).
Вы можете подключить gitolite поверх ssh или (как в случае с git-запросом, выполняемым с помощью go import) с https.
Но главное это:
- Гитолит на стороне сервера
- вы должны использовать его с сервером Apache (как, например, с моим конфигом), а не с ssh, если вы хотите легко получить доступ к своим репозиториям с помощью go import.
Я написал инструмент только для этого варианта использования. Посмотрите, поможет ли это.