en git, ¿cuál es la mejor manera de save instantáneas de diferentes versiones?

usando el repository git, tienen twigs v1.0 a v1.6.

desea mantener el último de cada versión en su propio directory:

/dev /.git /good-stuff /v1.0 ... /v1.6 

¿Cuál es la mejor manera de hacer esto?

¿Hay alguna manera de recrear la instantánea cuando se compromete una twig?

server de Linux. pensando en un script de shell invocando git checkout seguido de rsync para mover los files. pero pensando que tenía que haber una mejor manera.

NOTA: utilizó "label" cuando debería haber dicho "twig" – mea culpa

Las tags realmente no deben ser actualizadas. Se supone que son puntos fijos en la historia. Si realiza cambios constantes, debe usar una twig para eso. Si haces esto, no hay necesidad de mantener carpetas fuera de git (un poco derrota el propósito de un vcs si lo piensas).

Sin embargo, si definitivamente tienes que tener esas carpetas, probablemente puedas configurar un enlace de confirmación de publicación que lo haga. Como no ha enumerado nada sobre su plataforma, no puedo entrar en más detalles.

Lo que estás pidiendo suena idiomático en Subversion, no en Git. En Git tu tree podría verse así:

 dev/ good-stuff/ 

También hay un directory .git / en dev / pero es realmente el repository mismo, en lugar de parte de su proyecto.

Puede realizar algunos cambios, confirmarlos y labelrlos como v1.0, luego confirmar otros cambios y labelrlos como v1.6. Pero en todo momento su tree reflejará el estado del proyecto, no la colección de tags. Por ejemplo:

 $ git add one.o $ git commit -m"one point oh" $ git tag v1.0 $ git rm one.o $ git add hex $ git ci -m"new version coming up" $ git tag v1.6 

Ahora, v1.0 se ve así:

 dev/ good-stuff/ one.o 

y v1.6 se ve así:

 dev/ good-stuff/ hex 

Para restaurar una instantánea labelda como v1.0, revisa la label:

 $ git checkout v1.0