Creando una nueva rama vacía para un nuevo proyecto

Resuelto fazineroso asked hace 12 años • 11 respuestas

Estamos usando un repositorio git para almacenar nuestro proyecto. Tenemos nuestras sucursales partiendo de la sucursal original. Pero ahora queremos crear un pequeño proyecto nuevo para realizar un seguimiento de cierta documentación. Para eso querríamos crear una nueva rama vacía para comenzar a almacenar nuestros archivos, y me gustaría que otros usuarios de la red clonaran esa rama.

¿Cómo podemos hacer eso?

Intenté algunas cosas, pero no funcionaron.

$ mkdir proj_doc; cd proj_doc
$ git init
$ git add .
$ git commit -m 'first commit'
$ git br proj_doc
$ git co proj_doc
$ git br -d master
$ git push origin proj_doc

Parece impulsar la rama correctamente, pero cuando hago una búsqueda o extracción, descarga información de otras ramas y luego también obtengo algunos archivos adicionales de otros proyectos. ¿Cuál es la mejor solución?

fazineroso avatar Dec 20 '12 16:12 fazineroso
Aceptado

Puedes crear una rama como huérfana:

git checkout --orphan <branchname>

Esto creará una nueva rama sin padres. Luego, puede borrar el directorio de trabajo con:

git rm --cached -r .

y agregue los archivos de documentación, confírmelos y envíelos a github.

Un pull o fetch siempre actualizará la información local sobre todas las sucursales remotas. Si solo desea extraer/obtener la información de una única sucursal remota, debe especificarla.

Hiery Nomus avatar Dec 20 '2012 09:12 Hiery Nomus

La respuesta correcta es crear una rama huérfana. Explico cómo hacer esto en detalle en mi blog. (Enlace archivado)

...

Antes de comenzar, actualice a la última versión de GIT. Para asegurarse de que está ejecutando la última versión, ejecute

which git

Si muestra una versión antigua, es posible que necesites aumentar tu RUTA con la carpeta que contiene la versión que acabas de instalar.

Bien, estamos listos. Después de hacer un CD en la carpeta que contiene su git checkout, cree una rama huérfana. Para este ejemplo, nombraré la rama "mybranch".

git checkout --orphan mybranch

Eliminar todo en la rama huérfana

git rm -rf .

Haz algunos cambios

vi README.txt

Agregar y confirmar los cambios

git add README.txt
git commit -m "Adding readme file"

Eso es todo. Si tu corres

git log

Notarás que el historial de confirmaciones comienza desde cero. Para volver a su rama maestra, simplemente ejecute

git checkout master

Puedes regresar a la rama huérfana ejecutando

git checkout mybranch
Sid Jain avatar Sep 30 '2013 00:09 Sid Jain