Ok, quindi abbiamo recentemente convertito da SVN a Mercurial.
Utilizziamo normalmente TortoiseHG.
Nel nostro unico repository abbiamo tutti i nostri progetti, C++/.NET/ASP. Abbiamo circa 100 progetti, tutti con progetti di libreria comuni.
Quindi sarebbe molto difficile creare più repo per ciascun progetto.
Ora, abbiamo il ramo default
e diciamo branchA
.
Sto lavorando su BranchA
e aggiungendo le mie modifiche uber ad esso, e ho cambiare una libreria comune, diciamo un metodo di estensione
Mercurial Fusione solo di alcuni changeset
voglio commettere questo a branchA
e default
, come potrei fare per questo?
Tuttavia, non voglio che tutti i miei cambia da branchA
per essere fuse in default
, e io non voglio tutte le altre modifiche da default
Speriamo che questo sia informazioni sufficienti!
Questo è il modo sbagliato di utilizzare il controllo della versione per gestire i progetti. Se si dispone di una libreria condivisa tra diversi progetti, la libreria dovrebbe avere il proprio repository. Gestire manualmente cambiamenti come questo ti causerà infiniti problemi a lungo termine. –
@PeterGraham I mega-repos sono utilizzati in aziende molto grandi come [Facebook] (https://code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/) con un buon successo. – Fowl