Ви, ймовірно, захочете отримати сервер розробників, а також бажано, також для інсценування. Ніхто ніколи не повинен просуватися від місцевого виробництва до виробництва, крім власного особистого веб-сайту. Ваш процес розгортання повинен підтримувати лише dev-> staging-> prod. Ви, мабуть, хочете, щоб хтось відповідав за підписання нових випусків - залежно від організації, це може бути керівник проекту, спеціальний контроль якості чи обов'язок, який обертається щотижня (з відчутним нагадуванням, наприклад, лише людина з пухнастою іграшкою, що потрапляє на тиждень поштовх). Однак спочатку обговоріть це зі своєю командою, щоб отримати бай-ін (див. Нижче).
Я хочу, щоб ця поведінка якимось чином була покарана або зробити її якомога неприємнішою.
Ви можете мати тестовий набір (у вас є один із таких, правда?), Включити чек, який визначає, чи ви перебуваєте на виробничому сервері, і, якщо він є, надсилає всім в офіс повідомлення електронною поштою Looks like $username is testing on prod, watch out
. Можливо, публічно ганьбити колегу було б неприємно. Або ви можете створити технічні обмеження, такі як заборона IP-адреси вашій команді дивитися на prod (який ви можете зняти, але ви повинні виправдати).
Я не рекомендую цього, однак, ви б виглядали як проблема, а не людина, яка тестує прод, і ви могли б зробити себе дуже непопулярними серед людей у команді, які не цікавляться.
Напевно, те, що ви насправді хочете, - це не за те, щоб ця поведінка була покарана, а щоб вона припинилася ?
Я змусив їх / нас використовувати [...]
Чудово, що ви виступаєте за вдосконалення робочого процесу, але це здається, що ви мало думаєте своїх колег та / або не маєте їхньої повної підтримки. Це, ймовірно, призведе до того, що колеги наполовину гаряче взаємодіють з робочим процесом, роблячи мінімум, необхідний для отримання коду на виробництво, а не наслідуючи духу робочого процесу, що означатиме більше часу, витраченого на очищення. І коли ви витрачаєте все більше і більше часу на очищення результатів неадекватної взаємодії з робочим процесом (адже ніхто більше не дбає, правда?), Всі інші будуть ставити під сумнів сам робочий процес.
Тож почніть з розмови.
Дізнайтеся, чому це відбувається (чи машина вашого колеги не настільки хороша для тестування? Ваш колега не впевнений у своїх галузях функцій чи застряг у мислячому режимі svn, коли фіксація та натискання однакові?), Поясніть, чому для вас проблема, що не перевірений код іде в програмі dev / staging / prod, і подивіться, чи можете ви зробити щось, щоб змінити, чому це відбувається (ваш колега швидше зробить те, що ви хочете, якщо ви тільки що зробили приємніше тестувати на місцевому рівні, ніж якщо ви щойно їх побили).
Якщо ви не можете вирішити це, і це справді зводиться до різниці думок, заплануйте загальнокомандну дискусію на наступну ретроспективну зустріч, подивіться, що роблять ваші колеги та думають. Складіть свою справу, але слухайте консенсус. Можливо, ваша команда каже, що нормально не тестувати текстові виправлення локально, і у вас просто є правило, що жодних великих функцій не випробовується на розробці. Запишіть на зустріч і прочитайте, що ви колективно вирішуєте, що дозволено в кожному з середовищ. Встановіть дату на пару місяців, щоб переглянути її, можливо, на ретроспективі.