Best practice per sviluppare pacchetti di nuget per la funzionalità di base accanto all'applicazione principale, che consuma i pacchetti

0

Sto cercando di estrarre alcune funzionalità di base dal mio codice applicazione principale, che non cambia molto spesso (ad es. logging, utils ecc.).

La nostra situazione attuale:

  • Un ramo dev con tutto il codice al suo interno.
  • Un sacco di rami di rilascio, ramificati dal ramo dev

Quindi, per quanto riguarda:

  • Crea un nuovo core-branch per le mie funzionalità di base e (forse) rilascia anche i branch per esso.

Quali sono le mie domande? Fondamentalmente mi manca un'idea per un'architettura funzionante, che non mi faccia più lavoro di quello che ho già:

  • Sono necessarie anche le versioni per la mia funzionalità di base? Non penso che ci sia un altro modo, perché ho bisogno di essere in grado di creare hotfix anche per loro, c'è?
  • Come gestisco i riferimenti? Sarebbe un po 'fastidioso correggere i riferimenti di nuget per la versione dell'app principale xyz per puntare al "core nuget xyz" giusto ogni volta che diramato una nuova versione dell'app principale.

Ho trovato questa domanda, è molto simile, ma non entra nei dettagli e per ora non soddisfa tutte le mie domande. Migliori pratiche per lo sviluppo del pacchetto NuGet accanto al consumatore?

Spero sia ok che ho iniziato questa domanda di follow-up. Spero, ci siano persone che hanno già fatto esperienza con una situazione simile

    
posta Jannik 08.08.2018 - 09:51
fonte

1 risposta

-1

Crea un nuovo repository per ciascuna delle librerie che desideri creare

Sposta il codice in quei repository

Imballa ogni libreria come un pacchetto di versioni di versione

Nella tua applicazione, fai riferimento ai pacchetti di nuget.

Smetti di fare rami di rilascio. Unisci il tuo ramo di sviluppo in master quando è pronto per il rilascio. Etichetta che commuta come versione 1.x o qualsiasi altra cosa.

Quando vuoi aggiornare una delle tue librerie, di nuovo non creare un ramo di rilascio. basta fare l'aggiornamento e pubblicare la versione 1.2 del pacchetto nuget. Aggiorna l'applicazione per fare riferimento alla nuova versione.

    
risposta data 08.08.2018 - 11:17
fonte

Leggi altre domande sui tag