#git #dart #dart-pub
#git #dart #dart-pub
Вопрос:
У меня есть пара небольших демонстрационных проектов dart в одном репозитории git. Таким образом, каждый проект находится во вложенной папке репозитория, а файлы yaml каждого из этих проектов находятся в соответствующей папке, а не в корне репозитория. Есть ли способ указать зависимость git от такой подпапки в репозитории git? Я знаю, что могу клонировать репозиторий вручную и использовать путь к файлу в спецификации зависимостей. Но то, что я ищу, — это способ иметь прямой URL-адрес git для этого пакета в поддиректории. Возможно ли это?
Комментарии:
1. вы пытались добавить имя каталога к URL-адресу?
git: url: git://github.com/munificent/kittens.git/somedir
В документации упоминается толькоref: some-branch
(ссылка может быть любой, которую Git позволяет идентифицировать фиксацию) см. dartlang.org/tools/pub/dependencies.html#git-packages2. Это не работает, потому что pub сначала запускает клонирование git, но URL-адрес с добавленным каталогом не ссылается на действительный репозиторий git, и поэтому клонирование завершается с ошибкой.
3. Я думаю, вам следует сделать запрос функции dartbug.com/new
4. Я создаю запрос функции. См . code.google.com/p/dart/issues/detail?id=19797
Ответ №1:
Несколько лет спустя была добавлена поддержка этого:
https://github.com/dart-lang/pub/pull/1650
Теперь вы можете разделить git
зависимость на url
и path
:
dependencies:
protobuf:
git:
url: git://github.com/dart-lang/protobuf.git
path: protobuf
Дальнейшее чтение: https://dart.dev/tools/pub/dependencies#git-packages
Ответ №2:
Это ответ, который я получил от команды разработчиков:
«Это не то, что мы планируем поддерживать. Репозитории должны иметь взаимно однозначные соответствия с пакетами, а пакеты должны располагаться на верхнем уровне репозиториев. «
Это затрудняет использование зависимостей от пакетов в репозитории git, поскольку Eclipse всегда использует корень проекта в качестве вложенной папки в репозитории.
Комментарии:
1. Теперь это возможно — см. Мой ответ 🙂