Кто ответственен за развертывание? [закрытый]

:h nl-used-for-nul объясняет, что символ новой строки '\n' отображается Vim как ^@. Итак, да, как вы уже сказали, вы отправляете фактические символы новой строки в оболочку.

Далее, общая идея замены одного символа '\n' (ASCII 0x0a) на два символа "\n" (0x5c 0x6e) также верна. Вы хотите, чтобы оболочка получила foo\nbar.

:echo substitute(@m, '\n', '\n', 'g')
a
ab
abc
abce
abcef
abcefg

Вывод, очевидно, все еще содержит фактические символы новой строки, поэтому мы должны избегать их.

:echo substitute(@m, '\n', '\\n', 'g')
a\nab\nabc\nabce\nabcef\nabcefg\n

Это выглядит хорошо! Итак, давайте попробуем всю команду, которую вы имели в виду:

:execute '!echo' substitute(@m, '\n', '\\n', 'g')
anabnabcnabcenabcefnabcefgn

Press ENTER or type command to continue

Хмм? Ну, :execute оценивает строки и поэтому использует «один уровень строк». Таким образом, мы должны еще раз избежать наших новых строк, тогда как мы должны удвоить количество экранирований для каждого «уровня строк».

Итак, нам нужны не только a\nab\nabc, нам нужны a\\nab\\nabc:

:echo substitute(@m, '\n', '\\\\n', 'g')
a\\nab\\nabc\\nabce\\nabcef\\nabcefg\\n

:execute '!echo' substitute(@m, '\n', '\\\\n', 'g')
a
ab
abc
abce
abcef
abcefg


Press ENTER or type command to continue

5
задан Ludwig Weinzierl 1 June 2009 в 09:52
поделиться

9 ответов

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

6
ответ дан 18 December 2019 в 13:19
поделиться

Кто получает вызов в 3:00, когда программное обеспечение не работает, или система умерла? Если это будет команда разработчиков, то затем любой ценой ожидают владеть развертыванием (так как Вы владеете производством).

Лучшая практика для организаций, которые могут поддерживать, должна предоставить Операционной группе инструкции по развертыванию и хорошие пожелания. Бутылки шотландской справки также.

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

4
ответ дан 18 December 2019 в 13:19
поделиться

Я - dev менеджер с ответственностью по нескольким продуктам. Я сделал, чтобы мои команды разработчиков произвели сборки артефактов развертывания, такие как файлы .war, которые могут быть просто развернуты на использовании веб-сервера Tomcat, это - интерфейс менеджера или веб-сервис API. Конфигурация для приложения все установлена и автономная в .war файле. Следовательно это просто для человека, делающего развертывание, чтобы просто взять его, и "отбрасывают его в", так сказать.

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

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

В нашей организации ответственность за развертывание также накладывается с первой производственной ответственностью за поддержку уровня.

Мы практикуем некоторую методологию толпы, но я никогда не просматривал эту проблему, как связано с методологией процесса разработки программного обеспечения по сути.

2
ответ дан 18 December 2019 в 13:19
поделиться
  1. программный процесс не завершается, пока рабочее программное обеспечение не находится в руках пользователей, которым нужен он - иначе это просто "shelfware"

  2. если нет никого больше, чтобы быть ответственным за развертывание и управление конфигурацией, то Вы - оно ;-)

1
ответ дан 18 December 2019 в 13:19
поделиться

Я думал бы как "Внутренний" разработчик, это будет Ваша ответственность (если не будет специализированная команда развертывания) развернуть новое программное обеспечение, тогда как, если бы Вы были от внешней компании затем, это было бы до них для развертывания его самих, если не указано в контракте.

1
ответ дан 18 December 2019 в 13:19
поделиться

Кажется довольно простым мне - если не Вы, затем кто? Фактическая ответственность за развертывание упала бы на некоторую другую команду, прежде чем Вы начали использовать Толпу? В противном случае затем я не вижу, почему Толпа изменила бы это.

0
ответ дан 18 December 2019 в 13:19
поделиться

Зависит от проекта и что "развертывание" означает для Вас. Так как я - веб-разработчик, развертывая главным образом приложения.NET с базой данных Sql Server, я всегда предпочитаю, чтобы развертывание было сделано менеджером по развертыванию или менеджером по релизам. Почему? Поскольку разделение заданий гарантирует, что проблемы пойманы, когда они должны быть.

Задание разработчиков должно быть должно обеспечить требуемые объекты или инструкции относительно того, как развернуться, затем кто-то еще развертывается к среде подготовки. Если что-то идет не так, как надо во время развертывания на подготовке, инструкции по развертыванию исправлены до развертывания на подготовке работ безупречно. Тот путь, надо надеяться, не будет никаких ошибок, когда тот же сценарий развертывания будет использоваться для перемещения кода в производство. Другими словами, мало того, что необходимо протестировать код, но также и сценарий развертывания.

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

0
ответ дан 18 December 2019 в 13:19
поделиться

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

Я соглашаюсь с первым комментарием - ТОЛПА не имеет никакого отношения к нему. На самом деле я думал бы, что для Вас намного лучше развернуться, поскольку Вы будете знать на собственном опыте, как хорошо вещи работают и быть тут же для получения обратной связи от тех пользователей.

0
ответ дан 18 December 2019 в 13:19
поделиться

Если бы команда разработчиков обеспечивала развертывание перед толпой, то они должны продолжить делать так, если Management конкретно не сказал, что кто-то еще должен сделать это. Если управление не сказало, то они действительно не думали об этом и просто ожидали, что это произошло бы волшебно, как он всегда имеет.

Если Вы не любите это, поднимаете его с управлением, но делаете работу, пока не сказали по-другому.

0
ответ дан 18 December 2019 в 13:19
поделиться
Другие вопросы по тегам:

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