git bundle: теги связки и головы - PullRequest
6 голосов
/ 19 апреля 2011

Разрабатываю на нескольких машинах.Я хочу иметь репозиторий для каждого из моих проектов на каждой машине разработки, и я бы хотел синхронизировать их без использования удаленного репозитория, к которому я могу перейти.(На данный момент я не могу позволить себе выделенную машину для этой цели).

Я думаю, что git bundle - подходящий инструмент для работы.Я просто связываю свое репо, когда я закончу работать на машине A, и распаковываю на машине B. Это оставляет меня с такими вопросами:

Можно ли встраивать информацию о тегах и ветвях в комплект?В частности, как я могу связать объекты тегов?

РЕДАКТИРОВАТЬ: просто примечание в сторону - я хочу сохранить этот рабочий процесс как можно более автоматизированным.Я не хочу относиться к комплекту как к удаленному.Вместо этого я хотел бы продублировать пакет в моем репозитории - то есть добавить коммиты и теги, быстро перенести существующие ветки и добавить новые ветки, если ветка не существует.

1 Ответ

6 голосов
/ 19 апреля 2011
git bundle create RA.bundle --branches --tags

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

git bundle принимает список аргументов, приемлемых для git rev-parse и git rev-list (и содержащих именованный ref, см. УКАЗАНИЕ ССЫЛКИ ), которая указывает конкретные объекты и ссылки для транспорта.

--branches[=<pattern>]

Сделайте вид, что все ссылки в refs/heads указаны в командной строке как <commit>.
Если задано <pattern>, ограничьте количество ветвей теми, которые соответствуют указанному глобусу оболочки.
Если шаблону не хватает ?, , или [, / в конце подразумевается.

--tags[=<pattern>]

Сделайте вид, что все ссылки в ссылках / тегах указаны в командной строке как <commit>.
Если задано <pattern>, ограничьте теги, совпадающие с заданным глобусом оболочки.
Если шаблону не хватает ?, , или [, / в конце, подразумевается.

...