Я внедряю некоторые встроенные Linux-машины в тех местах, где у них не будет доступа к Интернету или локальной сети на наш сервер Subversion. Единственный способ, которым я смогу управлять ими, - это подключить мой ноутбук к их порту Ethernet и войти в систему через SSH.

Перед их развертыванием я могу убедиться, что их рабочие копии SVN обновлены, но после этого я планирую продолжить разработку их приложения.

Есть ли способ как-то "протолкнуть" эти новые обновления на развернутые устройства, используя только мой ноутбук, при этом сохраняя целостность их проверок (т.е. без ручного копирования обновленных файлов поверх)?

Дополнительный вопрос: если это невозможно, есть ли способ скопировать всю информацию о проверке, чтобы развернутый модуль решил, что она была обновлена правильно?

1 ответ1

2

Прежде всего, мне интересно, действительно ли вам нужно использовать SVN для развертывания на встраиваемых машинах.

Я думаю, что было бы лучше экспортировать ваш репозиторий во временную папку на вашем ноутбуке, а затем отправить изменения с помощью rsync

svn export <repo>/folder_to_export
rsync -vaz folder_to_export/ user@embedded:target_folder

Если вам нужно использовать SVN, поместите последнюю версию вашего репозитория локально на ваш ноутбук, затем войдите в систему на встроенных устройствах и в первый раз выполните svn co <repo on laptop> . Затем в следующий раз войдите на встроенное устройство и просто сделайте svn up . Конечно, убедившись, что вы скопировали последний репозиторий SVN на свой ноутбук.

Некоторая информация о переносе хранилищ Subversion может быть найдена здесь:

http://svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .