2011-09-07 24 views
17

Esto me está volviendo loco.Cómo descargar/clonar una nueva rama de mi repositorio git de servidor en un repositorio git local ya creado en mi PC con Eclipse EGit

Creé un repositorio git en un servidor Linux alojado por mi empresa de hosting.

Lo cloné en una copia local usando Eclipse EGit.

Luego creé una rama en el repositorio original de git en el servidor.

¿Cómo copio la rama a mi copia local usando Eclipse EGit?

Al abrir Git Repositorios dentro EGit veo:

- Local 
-- master 

- Remote Tracking 
-- origin/development 
-- origin/master 

¿Cómo puedo obtener el origen/desarrollo en mi local utilizando EGit?

Sé que podría crear un nuevo clon, pero no quiero hacerlo porque creo que debe haber una forma de obtener solo la nueva rama.

Segunda pregunta - ¿Dónde está el comando pull dentro de EGit? Pude encontrar el comando de búsqueda, pero cuando lo ejecuto dice que no hay nada que recuperar. El RefSpec es:

+refs/heads/*:refs/remotes/origin/* 

Tercera pregunta - ¿Existe una manera de procesar los comandos git desde una línea de comandos dentro de Eclipse en mi sistema de Windows? Pensé en tratar de extraer algo de una línea de comando, pero no puedo encontrarlo en mi sistema local.

Gracias.

Respuesta

17

Su búsqueda está actualizada porque ya tiene todo copiado en su repositorio local. Un tirón se combinará origin/development en el maestro, que no es lo que desea. Desea crear una nueva rama con origin/development como punto de partida. No sé cómo hacerlo con egit, pero en la línea de comandos, lo hace:

git checkout -b development origin/development 
+0

gracias por la respuesta. Finalmente descubrí que no puedo enviar instrucciones de línea de comandos de git de EGit (al menos creo que no puedo). Descargué Git para Windows y debería poder ejecutar el comando sugerido. Informaré sobre el éxito o el fracaso. – jdias

+1

Funciona. He decidido dejar de usar los menús de Egit para emitir comandos de git. Ahora estoy usando la línea de comando exclusivamente. De esta forma, no tengo que adivinar cómo va a ejecutar Egit una acción cuando presiono un botón de menú. Simplemente escribo lo que quiero en la línea de comando y sé cómo va a responder. Estoy marcando esta pregunta como respondida. Gracias Karl. – jdias

17

También he estado buscando en torno a algunas horas para averiguar cómo conseguir una rama remota en Eclipse EGit. ..

La solución se indica en this Bugreport. Y es realmente fácil si sabes cómo hacerlo, no es necesario utilizar la versión de línea de comando de git, que, aunque funciona en el 99% de los casos, puede ser riesgoso ya que tuve problemas que interferían con Eclipse. y EGit.

sólo tienes que seguir estos pasos:

  1. En primer lugar asegúrese de que ha abierto la EGit Repository view. Si aún no lo ha abierto, vaya a "Ventana → Mostrar vista → Otro ..." y desde allí seleccione "Git → Repositorios Git".
  2. En el Repository view, seleccione "Sucursales → Seguimiento remoto". Debería ver sus ramas remotas allí ya (ejemplo: origin/new_feature).
  3. Haga clic derecho en la rama remota que desea tener con sus sucursales locales. Elija "Crear derivación ..."
  4. Los valores predeterminados deberían ser correctos.Normalmente, no debe cambiar nada aquí. Tenga en cuenta que debe no cambiar la "estrategia de extracción" a algo más que "combinar" si no sabe lo que está haciendo. De lo contrario, al tirar de los cambios ascendentes se podrían perder datos.
  5. Haga clic en OK "Finalizar" y ya está :)
+0

Es bastante malo que el complemento no recupere y establezca el esperado (por ejemplo, "nueva_prueba", sino que establece un nombre alfanumérico aleatorio [en efecto]) haciéndole pensar que esta opción no es la que usted desea. :-( –

3

que he tenido que hacer frente al mismo problema, y ​​aquí es cómo lo resolví:

  1. abierto Git perspectiva

  2. Primero debe tener la rama que desea extraer, en su repositorio bajo Seguimiento remoto. Mi problema era que yo no podía ver la rama remota, por lo que con el fin de solucionar esto - ejecutar un Tire en el repositorio, y este comando debería conseguir que todas las ramas bajo de seguimiento remoto

  3. botón derecho del ratón la sucursal (remota), Check Out, Check out como nueva sucursal local
Cuestiones relacionadas