Що означає "Нічні будівлі"?


53

Я деякий час використовую проекти з відкритим кодом і розробляю програми з відкритим кодом, і так часто зустрічаю слова "Nightly Build", і мені завжди цікаво, що це насправді означає. Чи це буквально означає, що проекти робляться виключно як побічні проекти (як правило, вночі після того, як кожен закінчив свої робочі дні), і немає справжнього учасника / спеціальної команди з розробки або це складніше за це?


10
Google вас провалив? joelonsoftware.com/articles/fog0000000023.html був досить високим у цьому списку. Будь ласка, оновіть своє запитання, щоб виявити конкретні речі, відсутні у цій публікації в блозі.
S.Lott

2
@ S.Lott Посилання, яке ви надаєте, є досить довгим, добре мати коротку версію або більш просту відповідь тут, коли переповнення стека. Для тих, хто хотів дізнатися більше про тему, перейдіть за посиланням, яке ви надали.
Ендрю Лам Ят Венг

Відповіді:


68

Ні, це означає, що щовечора все, що було перевірено на контроль джерел, будується. Ця збірка - це "нічна збірка".


13
Зазвичай є машина, на якій працює сценарій, яка автоматично витягує всі зміни з системи управління версіями, збирає (збирає) весь код, а потім публікує його кудись для завантаження або (якщо його веб-сайт або служба) публікує в тестовій системі і запустіть його. Інша назва, до якої належить, - Система безперервної інтеграції, хоча це може означати, що збірка виконується в момент виконання будь-якого зобов’язання VCS.
CodexArcanum

3
Він також повинен збільшити версію і закреслити все правильним номером версії. Нічого не засмучує, ніж мати справу з випадковими побудовами програмістів, побудованих із застарілого коду та неправильних номерів версій. Нічна збірка надає кожному змогу та номер версії, якій вона може довіряти.
jqa

36

Як правило, це означає автоматизовану збірку, яка робиться один раз на день, як правило, після закінчення робочого дня для більшості розробників. Для проектів з розробниками в декількох часових поясах це, як правило, компромісний час. Ідея полягає в тому, що всі, хто збирається перевірити код "сьогодні", зробили це, і автоматизована збірка переконається, що все збирається, і, сподіваємось, запустіть одиничні тести та будь-які інші автоматизовані тести тощо, які існують, потім виробляють остаточний інсталятор / виконуваний тощо.


13

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


7

Цей термін часто використовується для великих проектів, коли повна перебудова готового продукту з джерела займає занадто багато часу, щоб окремий розробник міг зробити це як частину свого нормального циклу розробки.

Натомість повна перебудова виконується автоматично протягом ночі, тому комп'ютер для збирання має 8-10-12 годин для складання, і він буде готовий для розробників, які прийдуть наступного ранку, щоб вони могли продовжувати працювати над своїм окремим крихітним шматочком зверху нової версії.

У наші дні часто трапляється тест, що включає багато тестів, що забезпечують правильну роботу коду, а також генерують та публікують документацію з джерела (наприклад, javadoc).


0

Нічні побудови - це добре, вони надають негайну віддачу розробникам, якщо вони порушили збірку. Нічна збірка означає, що програмне забезпечення є стабільним і, ймовірно, створюється для нових користувачів. Програмне забезпечення, яке не будується регулярно, важко випустити.

Цитується з: https://chess.eecs.berkeley.edu/softdevel/nightly.htm


4
це читається більше як коментар, див. Як відповісти
gnat

нагадує мені про мої екзаменаційні дні, саме так ми починали відповідати на запитання. 😂😜
-anik

Це пояснює те , що нічні збірки для, але це не пояснює , що нічні збірки є .
Брайан Оуклі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.