Основное различие заключается в том, существует ли родительский набор изменений в целевом хранилище.Если, например, у вашего исходного репо есть это:
[A]--[B]---[C]
, а у вашего назначения это:
[A]--[B]
, и вы хотите отправить [C], вы можете использовать связку (или просто нажать /pull).
Если, однако, у вашего хранилища назначения было:
[A]--[D]
, и вы хотите добавить к нему [C], вам придется использовать экспорт и импорт.
Вкратце: bundle
- для случаев, когда вы хотите сделать push / pull, но у вас нет хорошего сетевого пути, а export
- для случаев, когда вы хотите отправить логическое содержимое набора изменений, а не тот конкретный, точный набор изменений.