Как сделать клон этого репозитория?

Я хочу клонировать этот репозиторий и использовал команду:

git clone https://github.com/wildfly/quickstart/tree/master/helloworld-html5

Не работает Я думаю, что URL не тот формат, который подходит. Как мерзавец может клонировать этот репо? Благодарю.

2 ответа

Решение

Похоже, вы слишком глубоко заглядываете в репо.

Попробуй это:

git clone https://github.com/wildfly/quickstart.git

В нем должны быть все нужные вам файлы.

Вы можете сделать то, что известно как sparse checkout, но это сложно, и я нахожу это главным образом раздражающим для чего-то очень простого; Есть также "плагины", которые могут помочь в этом процессе, но я оставлю это в качестве упражнения для исследования!

Модель Git - поддерживать репо на самом верхнем уровне. Но вы можете настроить свою рабочую копию репо, чтобы обращать внимание только на интересующие подпапки / файлы.

Вот два метода (первый - моя история из командной строки, и она только выбирает ветви, а не тянет вниз весь репо):

 2015  mkdir quick
 2016  cd quick
 2017  git init 
 2018  git remote add -f html5 https://github.com/wildfly/quickstart.git
 2019  ls
 2020  git config core.sparseCheckout true
 2021  echo "helloworld-html5" > .git/info/sparse-checkout
 2023  git pull html5 master
 2024  ls
 2025  cd helloworld-html5/
 2026  ls

Этот метод снесет все (явно), а затем вы prune это от. Это в значительной степени тот же метод, что и выше, но сначала он пытается загрузить весь репозиторий, а затем удаляет все!

  1. git clone https://github.com/wildfly/quickstart.git quickstart ** Обратите внимание на .git расширение, это ваша подсказка, что это репо, который вы можете снять!
  2. Это создает каталог с именем quickstart что вы можете сделать погружение (мне потребовалось около 1 минуты, чтобы загрузить весь репо).
  3. cd quickstart
  4. git config core.sparsecheckout true
  5. (внутри каталога быстрого запуска) сделать echo "helloworld-html5" > .git/config/sparse-checkout
  6. Затем снова прочитайте с дерева, выполнив: git read-tree -m -u HEAD (не стесняйтесь читать man git read-tree для чего -m а также -u делать.
  7. Проверьте свой каталог, и теперь у вас есть только папка helloworld-html5!

Если это неудовлетворительно для вас, то вы, вероятно, захотите взглянуть на плагины, которые помогут вам раскрыть интересующую вас подпапку (иначе прочтите API для CLI на git).

Обновление - Когда я пошел искать упомянутые плагины, я на самом деле обнаружил, что вы можете git init а также git remote add репо, не потянув всю вещь вниз. Затем вы можете выполнить шаги 4-7 и сделать git pull только той подпапки, которую вы хотите! Оформить заказ: разреженный

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