Почему имена пакета содержат номера версий?

Вы уверены, что это была 'разность' того файла и предыдущего файла?

Я aske, потому что, если два разработчика работают над той же строкой (строками) того же файла, второго cvs commit может заставить cvs оставлять две версии той же строки (строк) на месте, с дополнительными строками, которые имеют'>>>>>' или' <<<<<' в них.

Сделать cvs log thefileinquestion и посмотрите то, на что похожа история фиксации. Можно видеть проблему там.

15
31.07.2012, 01:10
2 ответа

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

Иногда переходный период происходит во время системного выпуска, который Вы в настоящее время используете. Для некоторых пакетов это происходит достаточно часто, что можно ожидать видеть переходные версии пакета в каждом новом системном выпуске. Инструменты разработки программного обеспечения часто попадают в эту категорию, начиная с обновления до новых инструментов в том же расписании, поскольку системные выпуски не могут быть практичными. Зависимость моей компании от конкретных версий GCC, Autoconf и Perl могла бы быть на 5-летнем цикле, в то время как моя ОС могла бы быть на 3-летнем цикле обновления. Это поэтому помогает мне принять новые Ose, если это включает мои более старые версии некоторых пакетов в дополнение к тому, что было текущим в то время, когда новая ОС разрабатывалась.

Другие времена, эти существенные изменения версии произошли давно, в прошлом и теперь все находятся на текущей версии. Дело обстоит так с Apache, например. 1.3 к 2,0 изменениям были намного большим соглашением с точки зрения совместимости, чем любой из 2.x изменения версии, поэтому после того как все были прочь 1.3, больше не было потребности продолжать предлагать несколько версий Apache в данной версии ОС. Но, после того как у Вас есть все использующие apache2 пакет, нет очень хорошего аргумента для переименования его назад только к apache. Это вызвало бы ненужную стычку обновления. Кроме того, где была воспринятая потребность в прошлом для обеспечения двух параллельных версий временно, потребность, вероятно, повторится в будущем.

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

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

Часто, когда приложение рассматривают этот путь, это - потому что это содержит элемент библиотеки. Например, Apache не является просто веб-сервером, он также предоставляет разработке API для плагинов. (mod_foo и такой.), Если у кого-то есть старое mod_something связанный против плагина Apache 1.3 ABI и не обновил его для использования более новых 2,0 API, удобно, если ОС продолжает предлагать старый Apache 1.3, пока у всех сменных создателей нет шанса обновить их плагины.

26
27.01.2020, 19:49

Из того, что я видел, причины этого:

  • Миграция справки в главных версиях пакетов: когда PHP 5 был выпущен, возможно, один должен был иметь установку PHP 4. Это позволяет иметь выбор между версиями (по крайней мере, пока более старая версия не является устаревшей).

  • Продолжайте обеспечивать обновления более старой версии программного обеспечения (например, после того, как Apache 3 выпущен, мог бы быть необходим для исправления Apache 2), не обновляя его до более новой главной версии.

Например, ядро Linux имеет (с сегодняшнего дня) стабильные версии 3.5, 3.4.7, 3.2.24, 2.6.35.13 и т.д.... Если Вы работаете 2.6.35 в системе, и Вы хотите усовершенствовать ее, но не обновить это ядро, можно установить соответствующий пакет.

3
27.01.2020, 19:49

Теги

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