Що таке "вище за течією"?


27

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

А також, що протилежне "вище за течією". Якщо не годиться їхати "вище за течією", яка альтернатива і чому?

Відповіді:


33

Вгору посилається на джерело компонента, про який йде мова.

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

Об'єднання патча вище за потоком у цьому контексті означало б надіслати патч авторам лібтрансляції для включення. Таким чином виправлення буде поширюватися на кожен проект, який базується на передачі інформації.

Альтернативою об'єднанню вище за течією є збереження виправлення для себе.


Тож злиття всього вище за течією йде разом із менталітетом з відкритим кодом? Одне виправлення на кілька програм програмного забезпечення?
n0pe

4
Об'єднання вгору за течією - це те, що ви можете зробити з програмним забезпеченням з відкритим кодом, оскільки у вас є доступ до джерела, і ви можете самостійно знаходити та виправляти помилки. У закритому джерелі більшість сторін не мають такого доступу (хоча в деяких ситуаціях ліцензія може включати його), тому вони обмежуються повідомленням про помилку та / або пошуку обхідних шляхів. Вгору за течією йдеться про багатошаровий підхід до розробки програмного забезпечення, а також застосовується до вдосконалень, а не лише виправлень.
plco

Якщо говорити інакше: "вище за течією" означає "з кого ви отримали джерело"; за межами світу з відкритим кодом, немає поточного потоку, як ви взагалі не отримали джерело. =)
rakslice

21

Використання Ubuntu як приклад.

Ubuntu - це дистрибутив, який пакує багато програмного забезпечення разом, малого та великого. Є графічні драйвери, X-сервер та Gnome. Ubuntu сам не розробляє ці програми. Ubuntu "просто" пакує програмне забезпечення разом, переконуючись, що окремі компоненти працюють разом. Все те програмне забезпечення, яке Ubuntu збирає разом, називається вище з точки зору Ubuntu.

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

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

Якщо Ubuntu вирішить не надсилати цей патч вгору, або проект висхідного потоку відхиляє патч (але ubuntu вирішує все-таки зберегти патч), то Ubuntu технічно розщедрив проект.

Протилежністю вище за течією буде нижня течія, Ubuntu знаходиться нижче за течією від Gnome. Я не чую / читаю цей термін, який часто використовується.

Дивіться також статтю про вище за течією у Вікіпедії.

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