Esiste un contrario per il termine "backporting"?


20

A quanto ho capito, il termine "Backporting" viene utilizzato per descrivere una correzione che viene applicata in una versione futura che viene anche trasferita a una versione precedente. La definizione di Wikipedia è la seguente:

Il backporting è l'azione di apportare una determinata modifica del software (patch) e applicarla a una versione precedente del software rispetto a quella per la quale è stata inizialmente creata. Fa parte del passaggio di manutenzione in un processo di sviluppo software ...

Per esempio:

  • Un problema è stato scoperto e risolto in V2.0. La stessa correzione viene trasferita e applicata a V1.5.

Qual è il termine quando questo viene fatto nella direzione opposta?

  • Il problema è stato scoperto e risolto in V1.5. La stessa correzione viene trasferita e applicata alla V2.0.

Il termine "backporting" sarebbe ancora valido? Oppure esiste un termine come "Forwardporting" (che suona in modo divertente molto simile a "Port Forwarding")?


1
Che dire del "propagarsi"?
Gill Bates,

Risposte:


28

È lo stesso del contrario di una barra rovesciata. Tutti vogliono chiamarlo una barra, ma in realtà è solo una "barra". L'opposto del backporting è semplicemente "porting".


"Porting" è un termine più generale e può essere applicato a qualsiasi trasferimento di codice, anche tra lingue. Nella mia azienda utilizziamo il "forwarding porting" per il caso specifico descritto in questa domanda.
Marko Topolnik,

14

Questo in genere non accade poiché risolveresti il ​​problema nella base di codice V2.0 e, facoltativamente, esegui il backport. :) In termini di controllo della versione, questo è semplicemente chiamato merging.


3
Ciò accade perché V1.xe V2.x coesistono e vengono mantenuti in parallelo, ciascuno sul proprio ramo di manutenzione. Un bug tra versioni può essere scoperto e risolto su qualsiasi lato.
Marko Topolnik,

3
Se la V1.5 è già stata rilasciata, ma la V2.0 verrà rilasciata in futuro, risolvi innanzitutto il problema nella V1.5, poiché questa versione è già utilizzata dai clienti e necessita di una soluzione più urgente. Successivamente si esegue il porting della correzione su V2.0.
user1364368

@ user1364368 la gestione delle versioni è una preoccupazione ortogonale. ha più senso correggere il bug nella versione più recente della base di codice in quanto contiene più informazioni (la sua cronologia delle modifiche è un superset della cronologia delle modifiche della versione precedente). pensaci in un altro modo: ignora che la modifica è correlata a un bug. preferiresti ancora introdurre modifiche in una versione precedente? per esempio, inizieresti a sviluppare funzionalità in una versione precedente della base di codice? questo si riduce molto rapidamente a una strategia di sviluppo senza senso, retro-ricorsiva
awdz9nld

@ MartinKällman Il responsabile del codebase (per V2.0) potrebbe essere (a causa dell'attuale lavoro di sviluppo) in uno stato che non gli consente di sviluppare la correzione. Potrebbero essere necessari giorni o settimane prima che il capo della base di codice sia di nuovo pulito, ma non puoi aspettare così tanto tempo per la correzione di emergenza.
user1364368

1

Immagino che userei i termini: a prova di futuro o, in alternativa, compatibilità diretta :

Da Wikipedia a prova di futuro :

A prova di futuro: la frase a prova di futuro descrive il processo esclusivo di cercare di anticipare gli sviluppi futuri, in modo che possano essere intraprese azioni per minimizzare le possibili conseguenze negative e cogliere le opportunità.

E compatibilità futura :

La compatibilità diretta o verso l'alto (talvolta confusa con l'estensibilità) è un concetto di compatibilità per la progettazione di sistemi, come ad esempio la compatibilità con le versioni precedenti. La compatibilità futura mira alla capacità di un progetto di accettare con garbo input destinati a versioni successive di se stesso.

O entrambi "a prova di futuro attraverso la compatibilità futura".

Oh la parola d'ordine :)


0

Il backporting nella direzione opposta è solo il porting , ma non c'è motivo di farlo nel contesto che descrivi.


0

Penso che il termine "backport" si riferisca solo all'azione di portare una funzionalità di una nuova versione di un programma a un vecchio dello stesso programma, per i vantaggi di usarlo ancora.

Poiché non si sviluppa una nuova funzionalità su versioni vecchie e chiuse, non esiste alcun backporting "inverso" (se lo si è, per definizione, la versione non è vecchia).

Quello che stai chiamando "forwardport", risolvendo un problema sia in una versione precedente che in una nuova, è un semplice bugfix o patch.


-1

Non esiste un termine comunemente usato per unire una serie di modifiche da un ramo software precedente a uno più recente. A meno che l'ultimo ramo del software non sia altamente instabile, la maggior parte degli sviluppatori svilupperà correzioni di bug sull'ultimo ramo del software indipendentemente dalla versione in cui è stato trovato il bug. Questo viene fatto al fine di ridurre i conflitti di unione poiché l'ultimo ramo del software cambia più frequentemente dei rami più vecchi. Qualsiasi bug del software segnalato da un cliente è per definizione segnalato in una versione precedente rispetto a quando è stato risolto poiché il cliente non ha accesso all'ultima filiale del software.


vero a meno che il cliente non desideri una soluzione ADESSO.
Alex R,

-1

Sono venuto qui in cerca di una risposta perché sto scrivendo un commento di commit proprio per questo scenario. Data la mancanza di un vero gergo per questa situazione comune, lo spiegherò semplicemente come "fusione degli hotfix di produzione nel ramo di sviluppo".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.