Распутайте проблему с мерзавцем
Я только что получил пакет Git по электронной почте. Как я могу разделить это, чтобы прочитать это? У меня проблемы с использованием команды unbundle. я пытался
git unbundle *bundle name*
но это дает мне просто странный код
eae0b00697e53cd87c871143051673f3ee413148
и рефери / руководители / мастера
1 ответ
У меня проблемы с использованием команды unbundle.
Вы не должны запускать эту команду вообще.
Я только что получил пакет Git по электронной почте. Как я могу разделить это, чтобы прочитать это?
Это описано в git bundle
документация:
ПРИМЕР
Предположим, вы хотите перенести историю из хранилища R1 на машине A в другое хранилище R2 на машине B. По любой причине прямое соединение между A и B не разрешено, но мы можем перемещать данные из A в B через некоторый механизм (CD, электронная почта и т. д.). Мы хотим обновить R2 с разработкой, сделанной на ветке master в R1.
Чтобы запустить процесс, вы можете сначала создать пакет, который не имеет основы. Вы можете использовать тег, чтобы запомнить, какой коммит вы обработали в последний раз, чтобы упростить последующее обновление другого репозитория с помощью инкрементного пакета:
machineA$ cd R1 machineA$ git bundle create file.bundle master machineA$ git tag -f lastR2bundle master
Затем вы переносите file.bundle на целевой компьютер B. Поскольку этот пакет не требует извлечения какого-либо существующего объекта, вы можете создать новый репозиторий на компьютере B, клонировав из него:
machineB$ git clone -b master /home/me/tmp/file.bundle R2
В результирующем репозитории будет определен удаленный объект с именем "origin", который позволит вам получать и извлекать данные из пакета. Файл $GIT_DIR/config в R2 будет иметь такую запись:
[remote "origin"] url = /home/me/tmp/file.bundle fetch = refs/heads/*:refs/remotes/origin/*
См. Остальную часть документации для остальных инструкций. Обратите внимание, что вы являетесь "машиной B" в этом примере; кто-то еще на машине А сделал первые несколько шагов. (Они сделали их правильно? Я не знаю, а вы?)