Как выборочно клонировать репозиторий git - PullRequest
8 голосов
/ 18 августа 2011

Я новичок в Git. Я хочу клонировать большой удаленный репозиторий, скажем, xyzcodebase. Структура репозитория такова, что у меня есть папки src для разных функциональных областей, как показано ниже.

xyzcodebase
|
|__ Func area 1
|
|__ Func area 2

Я работаю на Functional area 2, поэтому при клонировании я не хочу код из Functional area 1 (большого размера), который сэкономит много моего времени. Так что после клонирования у меня будет только Functional area 2 исходный код в моем локальном хранилище.

Есть ли способ выполнить такое избирательное клонирование репозитория git?

Заранее спасибо за помощь

Ответы [ 2 ]

7 голосов
/ 18 августа 2011

Нет, нет способа клонировать только один каталог.Git хранит историю как изменения во всем хранилище, а не хранит только поддеревья как SVN.

Если ваш проект содержит несколько функций, возможно, было бы лучше разделить ее на несколько подпроектов, с разными хранилищами,включить другие репозитории как подмодули в основной проект.Но это зависит от того, как организован ваш проект.

0 голосов
/ 10 октября 2016

Это хакерское решение, которое в особых случаях может помочь с вашей проблемой.В частности, если вас интересует только один файл, вы можете просто загрузить его с консоли (в Unix) через wget: wget https://raw.githubusercontent.com/GITHUBUSER/REPOSITORY/master/file.ending

Вы можете получить ссылку на определенный файл, перейдя к нему вGithub, а затем нажмите на «сырье».

...