Есть ли противоположность для термина «Backporting»?


20

Как я понимаю, термин «Backporting» используется для описания исправления, которое будет применено в будущей версии, которая также перенесена в предыдущую версию. Википедия такова:

Backporting - это действие, связанное с определенным изменением программного обеспечения (патчем) и применением его к более старой версии программного обеспечения, для которой оно изначально было создано. Это является частью этапа обслуживания в процессе разработки программного обеспечения ...

Например:

  • Проблема обнаружена и исправлена ​​в V2.0. То же самое исправление портировано и применено к V1.5.

Какой термин, когда это делается в обратном направлении?

  • Проблема обнаружена и исправлена ​​в V1.5. Такое же исправление портировано и применяется к V2.0.

Будет ли применяться термин «Backporting»? Или есть такой термин, как «Переадресация» (который забавно звучит как «Переадресация портов»)?


1
Как насчет "размножения"?
Джилл Бейтс

Ответы:


28

Это так же, как обратная косая черта. Все хотят назвать это косой чертой, но на самом деле это просто косая черта. Противоположностью бэкпортинга является просто «портирование».


«Портирование» является более общим термином и может применяться к любой передаче кода, даже между языками. В моей компании мы используем «форвард-портирование» для конкретного случая, описанного в этом вопросе.
Марко Топольник

14

Обычно этого не происходит, так как вы исправили бы упомянутую проблему в кодовой базе V2.0 и, при желании, сделайте бэкпорт. :) С точки зрения контроля версий это называется просто merging.


3
Это происходит потому, что V1.x и V2.x сосуществуют и поддерживаются параллельно, каждый в своей ветви обслуживания. Кросс-версия ошибки может быть обнаружена и исправлена ​​с любой стороны.
Марко Топольник

3
Если V1.5 уже выпущен, но V2.0 будет выпущен в будущем, вы сначала решите проблему в V1.5, потому что эта версия уже используется клиентами и нуждается в исправлении в большей степени. После этого вы портируете исправление на V2.0.
user1364368

@ user1364368 управление релизами - это проблема ортогональности. имеет смысл исправлять ошибку в самой последней версии кодовой базы, поскольку она содержит больше информации (ее история изменений является расширенным вариантом истории изменений более старой версии). думайте об этом иначе: не обращайте внимания на то, что изменение связано с ошибкой. Вы бы все еще предпочли внести изменения в более старую версию? Не могли бы вы, скажем, начать разработку функций в более старой версии кодовой базы? это очень быстро сводится к бессмысленной, назад-рекурсивной стратегии развития
awdz9nld

@ MartinKällman Глава кодовой базы (для V2.0) может быть (из-за текущей работы по разработке) в состоянии, которое не позволяет ему разрабатывать исправление. Это может занять несколько дней или недель, пока заголовок кодовой базы снова не станет чистым, но вы не можете так долго ждать экстренной коррекции.
user1364368

1

Думаю, я бы использовал термины: будущее или, наоборот, прямая совместимость :

Из Википедии на будущее :

Доказательство будущего. Фраза «проверка будущего» описывает исключительный процесс попытки предвидеть будущие события, чтобы можно было предпринять действия, чтобы свести к минимуму возможные негативные последствия и использовать возможности.

И прямая совместимость :

Прямая совместимость или восходящая совместимость (иногда путаемая с расширяемостью) - это концепция совместимости для проектирования систем, например, обратная совместимость. Прямая совместимость направлена ​​на то, чтобы дизайн мог изящно принимать входные данные, предназначенные для более поздних версий.

Или и то, и другое: «Перспектива через прямую совместимость».

О, модное словечко :)


0

Бэкпорт в обратном направлении - это просто портирование , но нет причин делать это в контексте, который вы описываете.


0

Я думаю, что термин «бэкпорт» относится только к действию, заключающемуся в переносе функции новой версии программы на более старую версию той же программы, что дает преимущества от ее использования.

Поскольку вы не разрабатываете новую функцию для старых закрытых версий, «обратного» обратного переноса не существует (если вы, по определению, версия не старая).

То, что вы называете «форпортом», исправляя проблему как в старой, так и в новой версии, - это просто исправление или исправление.


-1

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


истина, если ваш клиент не хочет исправить это сейчас.
Алекс Р

-1

Я пришел сюда в поисках ответа, потому что я пишу комментарий для этого сценария. Учитывая отсутствие фактического жаргона для этой распространенной ситуации, я просто изложу его как «объединение производственных исправлений в ветку разработчика».

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.