LINUX.ORG.RU

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

 ,


0

1

Привет, ЛОР!

Одновременно в рамках двух разных проектов использую один сторонний репозитарий с довольной жирной историей, где .git занимает кучу места. Скажи, есть ли какой-то простой способ использовать объекты из .git в двух копиях репозитария?

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

Есть ли стандартные средства для этого?

Дедупликацию средствами ФС не предлагать, я про это и так в курсе.

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

Не думаю что гитхаб использует хоть какую-то часть кода обычного гита, скорее всего там полностью своя реализация сервера, интегрированая в их инфраструктуру.

firkax ★★★★★
()

Одновременно в рамках двух разных проектов использую один сторонний репозитарий с довольной жирной историей

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

git submodule update --init --recursive --depth 1
Norgat ★★★★★
()
Ответ на: комментарий от Norgat

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

Worktree — это ровно то что мне нужно.

hateyoufeel ★★★★★
() автор топика

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

pon4ik ★★★★★
()
Последнее исправление: pon4ik (всего исправлений: 1)