Los repositorios de GIT muestran una modificación en una rama en la rama padre – git

Pregunta:


Usando GIT para manejar mis proyectos, noté una serie de errores.

Por ejemplo, al crear una rama (git checkout -b nueva_rama), ésta se crea normalmente, pero ante cualquier modificación, dicha modificación se ve reflejada automáticamente en la rama padre.

Ese problema lo hizo en un proyecto que ya tiene un tiempo en git. Para averiguar qué estaba pasando, creé un repositorio nuevo (git init). Éste se creó normalmente, y hasta pude crear una rama, pero cuando intento hacer el checkout a esta rama nueva, me da el siguiente error:

error: pathspec ‘rama_de_prueba1’ did not match any file(s) known to git.

Lo mismo sucede si intento hacer git checkout master, a pesar de que cuando creo las ramas se crean correctamente.

git branch no muestra ninguna rama, a pesar de haberlas creado anteriormente.

Lo más curioso es que en otra PC sucede lo mismo, ambas con Ubuntu.

Adjunto una captura de la terminal para ejemplificar mejor.

[email protected]:~/proyectos/probando$ git init
Initialized empty Git repository in/home/unbekannt/proyectos/probando/.git/
[email protected]:~/proyectos/probando$ git branch 
[email protected]:~/proyectos/probando$ 
[email protected]:~/proyectos/probando$ git checkout -b rama1
Switched to a new branch 'rama1'
[email protected]:~/proyectos/probando$ git branch
[email protected]:~/proyectos/probando$ 
[email protected]:~/proyectos/probando$ git checkout master
error: pathspec 'master' did not match any file(s) known to git.
[email protected]:~/proyectos/probando$ 
[email protected]:~/proyectos/probando$ 
[email protected]:~/proyectos/probando$ git checkout rama1
error: pathspec 'rama1' did not match any file(s) known to git.
[email protected]:~/proyectos/probando$ 
[email protected]:~/proyectos/probando$ git --version
git version 2.11.0
[email protected]:~/proyectos/probando$

Preguntado por: unbekannt

PictorGames

Cuando creas un nuevo repositioro git init has de hacer un git commit -m "first commit" y hacer un push al repositorio ( git push origin master)

Entonces marcaras la rama padre y apartir de aqui, podras hacer mas ramas con git checkout -b nombre_rama y para cambiar git checkout nombre_rama

Recuerda que si quieres saber en que rama estas, puedes utilizar git status y te informara de los ficheros modificados en la rama y como se llama dicha rama.

Cuando se crea un repositorio con git init no existe ninguna rama hasta que no hagas el primer commit. Por eso cualquier git checkout que no use -b va a fallar, y por eso si haces git branch no sale una lista. Tras el primer commit podrás comprobar que git branch ahora sí muestra una rama.

Fuente

Tags:

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *