Tengo un proyecto de gran tamaño en el que estoy trabajando y que usa git como VCS. En un momento dado estoy trabajando en la implementación de algunas características/correcciones de errores, etc. Para cualquier característica/error dado, sería bueno crear una jerarquía de ramas, por ejemplo.Organizando ramas de git
$ git branch
feature1
sub-branch1
sub-branch2
sub-branch3
feature2
sub-brancha
*sub-branchb #<--currently checked out
sub-branchc
bugfix1
sub-branch-foo
$ git checkout sub-brancha
$ git branch
feature1
sub-branch1
sub-branch2
sub-branch3
feature2
*sub-brancha #<--currently checked out
sub-branchb
sub-branchc
bugfix1
sub-branch-foo
¿Es posible hacer algo como esto, o tengo que adoptar un esquema de nombres más primitivo?
EDITAR
Para que sea un poco más concreta de lo que estoy buscando, si feature1 es una rama git, a continuación, en el ejemplo anterior, sub-BRANCH1 todo habría sido creado por git checkout -b sub-branch1
del feature1
rama (que se ramifica desde el maestro). por ejemplo:
$ git checkout master
$ git checkout -b feature1
$ git checkout -b testing
$ git branch
master
feature1
*testing
$ git checkout master
$ git checkout -b feature2
$ git branch
master
feature1
testing
*feature2
Tener git branch simplemente organizar ramas por donde vinieron (con un poco de sangrado adicional) es probablemente lo suficientemente bueno para mis propósitos ... A pesar de que los puntos de bonificación súper si puedo tener:
$ git branch
feature1
testing
feature2
testing
bugfix1
sub-branch-foo
con un poco de forma de administrar el nombre de un conflicto entre "feature1/prueba" y "característica2/prueba"
¿Por qué tienen diferentes ramas secundarias para nuevos desarrollos de funciones? –
@FatihArslan: ¿Por qué no? Una característica no solo cambia una sola pieza de código: una característica podría tocar una gran cantidad de código, cada pieza que puede ser probada/desarrollada por separado ... O bien, tengo característica-alfa (estable-ish) y característica- beta (inestable). Alpha parece funcionar para mí, pero beta hace algunos cambios para aumentar el rendimiento ... Eso es dos casos justo en la parte superior de mi cabeza. Como lo veo, la razón para hacer esto no es diferente de la razón para tener sucursales en primer lugar. – mgilson
¿Cuál es la pregunta? ¿Te estás preguntando si puedes hacer ramas fuera de las ramas, o si puedes cambiar el formato de salida 'git branch'? –