К сожалению, нет: работа по слиянию, которую вы делаете, происходит в индексе Git, плюс ваше дерево работ. Нет способа «Git» отправить их в другое хранилище на другом компьютере. (Должно быть, но нет.)
Можно создать переносимый архив из всего рабочего дерева и каталога .git
и отправить его на другой компьютер (или использовать scp -r
или rsync или аналогичный) для копирования всего, включая индексные файлы , Однако сам индекс содержит специфичные для машины данные stat
, поэтому это не гарантируется.
Git нужен какой-то способ выгрузить индекс в передаваемую форму (git ls-files --stage
, более или менее) и затем прочитать его в другом месте (т. Е. Перенести все BLOB-объекты, отсутствующие на другом компьютере, вместе с этим текстовым дампом), пока также сохранение и восстановление состояния рабочего дерева. В идеале должен быть способ превратить все это в коммит (который не идет ни в какую ветвь, а-ля stits коммиты), а затем «отменить» его на целевой машине. Это также позволит сохранить частичное слияние и получить его позже с резервным копированием. Но его не существует сегодня.