Sono novizio in Git.Mantain vecchie versioni senza creare filiali di lunga durata
Ho letto: "Pro Git: Mantenere un progetto" (libro) e Git: Documentazione/howto/mantenere-git.txt
Domanda difficile per me: come mantenere le vecchie versioni senza creando rami separati a vita lunga. In altre parole, sono interessato a lavorare con un ramo "maint" nel progetto Git.
In questo esempio (la fusione con i rami argomento e l'integrazione dei contributori delle patch non viene mostrata, anche altri rami di "successivo", "pu" non vengono visualizzati qui).
Queste immagini possono essere visualizzate anche at here.
+--master
|
+--maint
|
(c1)->(c2)
|
+--tag : feature-release v1.0
prossima volta:
tag:feature-rel v1.0--+ +--master
| |
(c1)->(c2)->(c)->(c)->(c)->(c)
|
+->(c)->(c)->(c)
|
+--maint
|
+--tag:maint-rel v1.0.1
successivo, come descritto in "mantenere-git.txt", eseguire:
$ git checkout master
$ git merge maint
Risultato:
tag:feature-rel v1.0--+ +--master
| |
(c1)->(c2)->(c)->(c)->(c)->(c)->(c100)
| /
+->(c)->(c)->(c50)-----'
|
+--maint
|
+--tag:maint-rel v1.0.1
prossima volta :
+--master
|
+--tag:feature-rel v2.0
|
...->(c)->(c100)->(c101)->(c102)
/
...->(c50)---'
|
+--maint
|
+--tag:maint-rel v1.0.1
E a questo punto ho alcune domande:
- Cosa a che fare con la "maint" ramo? Capisco che il puntatore "maint" debba essere spostato nella stessa posizione del "master"? Come ?
- Successivamente come fare un fork di un ramo "maint" dal ramo "master"?
- Se appare una patch (trascorsi molto tempo, ad esempio, la versione corrente v10.0) per il vecchio "tag: maint-rel v1.0.1", come integrarlo nel "maint" e in "maestro"?
Grazie.