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


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.