Использование го языка с гитолитом

Знаете ли вы, как использовать 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.

Я написал инструмент только для этого варианта использования. Посмотрите, поможет ли это.

https://github.com/tuxychandru/gorepos

Другие вопросы по тегам