Вы можете использовать rsync: // URLs в git fetch
/ git push
, но стоит отметить, что если механизм передачи не использует git на удаленной стороне (то есть «тупой протокол» в терминологии git), это будет намного медленнее и намного менее эффективным. В частности, если на удаленном сервере вообще нет доступных двоичных файлов git, дельта-сжатие использоваться не будет, что означает, что в хранилище будут храниться полные копии всех версий всех файлов.
Если вы решите использовать тупой протокол, вам, вероятно, придется скопировать пустой скелет (пустой) репозиторий на удаленную сторону, прежде чем вы действительно сможете что-то перенести на него. Вам также может понадобиться найти способ время от времени выводить git update-server-info
в удаленный репозиторий, чтобы тупые протоколы могли видеть, какие ветви существуют в репозитории.