Как гит-тянуть все кроме одной папки - PullRequest
12 голосов
/ 10 марта 2010

Есть ли способ git pull всех папок в хранилище, кроме одной? Я не хочу создавать файл .gitignore, потому что другие люди могут захотеть эту папку - она ​​слишком велика, чтобы использовать ее прямо сейчас.

Спасибо! * * 1004

Ответы [ 2 ]

10 голосов
/ 13 июня 2013

Если вы хотите получить просто так, и вы могли бы:

mkdir <repo>
cd <repo>
git init
git remote add -f origin <url>
git config core.sparsecheckout true
echo <dir1>/ >> .git/info/sparse-checkout
echo <dir2>/ >> .git/info/sparse-checkout
echo <dir3>/ >> .git/info/sparse-checkout
git pull origin master

Я нашел хорошую ссылку здесь .

9 голосов
/ 10 марта 2010

Я не думаю, что вы можете выполнить частичное извлечение, но вы можете попробовать и посмотреть, что произойдет, если вы вытяните рабочее дерево, которое не полностью проверено.

Поскольку Git1.7 , вы можете сделать разреженную проверку , как показано здесь , что означает, что ваше рабочее дерево явно исключит эту конкретную папку при заполнении ее содержание.

Теперь, если этот каталог такой большой, может быть лучше изолировать его в автономном репозитории Git, позволяя другим пользователям ссылаться на него как подмодуль .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...