rsync .git каталог

Существует несколько сценариев для рассмотрения: (a) если Вы портируете существующее приложение и задаетесь вопросом, если Моно достаточно хорошо для этой задачи; (b) Вы начинаете писать некоторый новый код, и Вы хотите знать, если Моно достаточно зрело.

Для первого случая, можно использовать инструмент Mono Migration Analyzer (Moma), чтобы оценить, как далеко приложение от работы Моно. Если оценка возвращается с развевающимися знаменами, необходимо запустить на тестировании и QA и подготовиться поставляться.

, Если Ваша оценка возвращается с отчетом функции подсветки, которые отсутствуют или значительно отличаются по их семантике в Моно, который необходимо будет оценить, может ли код быть адаптирован, переписан или в худшем случае, может ли приложение работать с уменьшенной функциональностью.

Согласно нашей статистике Moma на основе пользовательских представлений (это из памяти) приблизительно 50% работы приложений из поля, приблизительно 25% требуют приблизительно недельной ценности работы (рефакторинг, адаптируясь), еще 15% требуют серьезного обязательства восстановить блоки Вашего кода, и остальное просто не стоит потрудиться портировать, так как они так невероятно связываются с Win32. В той точке или Вы запускаете с нуля, или бизнес-решение будет управлять усилием сделать Ваш код портативным, но мы говорим ценность месяцев о работе (по крайней мере, из отчетов, которые мы имеем).

, Если Вы запускаете с нуля, ситуация намного более проста, потому что Вы будете только использовать API, которые присутствуют в Моно. Пока Вы остаетесь с поддерживаемым стеком (который является в значительной степени.NET 2.0 плюс все базовые обновления в 3,5 включая LINQ и Систему. Ядро, плюс любые из Моно межплатформенных API), Вы будете в порядке.

Время от времени Вы могли бы столкнуться с ошибками в Моно или ограничениях, и Вам, возможно, придется работать вокруг них, но это не отличается, чем какая-либо другая система.

Что касается мобильности: приложения ASP.NET являются более легкими к порту, поскольку у тех есть мало ни к каким зависимостям от Win32, и можно даже использовать SQL-сервер или другие популярные базы данных (существует много связанных поставщиков БД с Моно).

Windows. Портирование форм иногда более хитро, потому что разработчикам нравится выходить из песочницы.NET и P/Invoke их мозги для конфигурирования вещей, столь же полезных как изменение курсора мигающий уровень, выраженный как две точки bezier, закодированные в форме BCD в wParam. Или некоторый спам как этот.

24
задан svrist 9 September 2009 в 07:14
поделиться

5 ответов

Да, это возможно. IIRC, git использует относительный подход. Так что синхронизировать его с другим компьютером безопасно.

10
ответ дан 28 November 2019 в 23:10
поделиться

Вы можете использовать rsync без каких-либо проблем, но если у вас есть некоторые удаленные устройства, объявленные с именами хостов, которые являются локальными для машины (т.е. хранятся только в / etc / hosts), то они явно не будут работать.

Однако есть ли причина, по которой вы не используете сам git для синхронизации содержимого?

6
ответ дан 28 November 2019 в 23:10
поделиться

Да, вы можете, но вы должны сделать это с пустым репозиторием, как показано в этой ветке .

$ git clone --bare ./projet projet.git
$ rsync -a --stats --delete ./projet.git/ votre.serveur:~/projets/projet.git/

Примечание: 6+ лет спустя, git 2.8 (март 2016) официально не рекомендуют и полностью удаляют протокол git rsync !

См. commit 0d0bac6 (30 января 2016 г.) Джефф Кинг ( peff ) .
(Объединено Junio ​​C Hamano - gitster - в commit 9f03176 , 17 февраля 2016 г.)

Получается out " git clone " через транспорт rsync был нарушен, когда исходный репозиторий уже давно упакован ссылками, и никто не заметил и не пожаловался на это.

Commit 0d0bac6 от Джефф Кинг ( peff ) имеет все подробности.

5
ответ дан 28 November 2019 в 23:10
поделиться

Да, rsync в директории .git возможно и приведет к полному клонированию репозитория.

1
ответ дан 28 November 2019 в 23:10
поделиться

Ответ: у разработчиков должно быть 2 машины !!

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

  • Один корпоративный, который имеет корпоративную нагрузку, политики, права пользователей без прав администратора и т. д. Разработчик может использовать его для модульного тестирования приложений в режиме выпуска, поскольку некоторые разработчики имеют неприятную привычку выполнение всех модульных тестов с правами администратора. Обратите внимание, что этот протокол устарел, потому что, если в репозитории есть какие-либо действия, вы можете получить поврежденный клон (или выборку).

    Кроме того, как я слышал, он не работал правильно при наличии упакованных ссылок с 2007 года , и до недавнего времени этого никто не заметил. Он исчезнет в Git 2.8.

  • Или вы можете создать git bundle , rsync it или scp it на другом компьютере, а затем клонировать или получить из пакета.

28
ответ дан 28 November 2019 в 23:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: