2012-02-20 18 views
5

Tengo un proyecto de HG alojado en Bitbucket, y quiero moverlo a Github.Cómo importar un proyecto de Bitbucket a Github en Windows

He seguido el guideline aquí para instalar la extensión hg-git, en mi TortoiseHG.

He creado un repositorio en Github, pero aún no lo he inicializado (muestra esa página de instrucciones), así que no puedo clonar ese repositorio de git.

¿Qué hago ahora?

EDIT: Lo siento, olvidé de agregar que luego usaré git a partir de ese momento.

ACTUALIZACIÓN: Tomé prestado un mac y lo convertí usando fast-git-import sin dolor. Si alguien probó las soluciones a continuación y trabajó en Windows, vótelo lo suficiente, y yo lo convertiré en la respuesta.

+0

No lo hagas - sufrirás ... –

Respuesta

3

Me acabo de enterar que mi pregunta es un duplicado de Converting a Mercurial (hg) repository to Git on Windows (7).

Funciona bien. Como todo está bajo Cygwin, no es necesario usar el concurso.

Además de la respuesta a esa pregunta. Solo necesito generar una clave bajo Cygwin usando ssh-keygen -t rsa. Luego copié el contenido de la clave pública en .ssh/id_rsa.pub a la configuración del repositorio de Github.

Establecí el origen de git en la dirección Gihub por git remote add origin (repo address). Entonces finalmente puedo git push origin master --force en Github.

2

Debe completar el hg-git process (como un hg gexport) localmente en su estación de trabajo.

Entonces, cuando se tiene un repositorio git reflejo de tu repositorio inicial de Hg, a continuación, se puede añadir un origen GitHub, y empujar a la misma:

git remote add origin https://github.com/user/yourProject.git 
git push origin master 
git push --all 

Sin embargo, los comentarios Lazy Badger, y con razón, que la Es posible que OP quiera usar Mercurial solo para este proceso y no instalar Git en absoluto.

En este caso, la página "hg-git on GitHub" contiene:

Si usted está empezando desde un repositorio de Hg existente, hay que configurar un repositorio Git en algún lugar que tenga acceso empuje para, agregarlo como predeterminado ruta o ruta predeterminada de inserción en su .hg/hgrc y luego ejecute hg push desde dentro de su proyecto.
Por ejemplo:

$ cd hg-git # (an Hg repository) 
$ # edit .hg/hgrc and add the target git url in the paths section 
$ hg push 

Esto convertirá todos sus datos de Hg en objetos de Git y empujarlos hasta el servidor Git.

+0

OP tiene ** Mercurial, no git ** –

+0

Intenté 'hg gexport' pero no se creó la carpeta' .git'. El enlace que mencionaste no habla de 'hg export'. ¿Puedes elaborar un poco más? – lulalala

+0

@LazyBadger: OP tiene ambos si quiere convertir un repo de Mercurial a uno de git. – VonC

1

En supuesto, que VCS base es todavía mercurial y la herramienta - TortoiseHG

  1. Hay que tener listo Git-repo (vacío, que se puede empujar desde el local)
  2. Si ha añadido y trabajando (i.e configurado correctamente - puede pull | push con Github) hg-git, tiene que agregar Git-URL en (local) repo hgrc ([paths] sección)
  3. agregar claves OpenSSH a Github, verificar la autorización basada en claves en THG (concurso)
    • yo sepa, sólo se git+ssh://[email protected]/user/repo.git URL funciona para github de hg-GIT
  4. Después de que se le han unido dos remota de recompra, por tanto usted será capaz de empujar/tirar de la pestaña Sincronizar

Complementos

partes relevantes de mercurial.ini, Git y Github relacionados

[ui] 
... 
ssh = "...\TortoisePlink.exe" 
... 
[auth] 
github.com.prefix = github.com 
github.com.username = lazybadger 

puedo decir nada acerca de la última sección, apenas recuerdan nada de "cuándo" y "por qué"

+0

Creé la clave OpenSSH usando git-bash pero no puedo cargarla en el concurso. Creo que el concurso solo carga masilla de llaves privadas? – lulalala

+0

@lulalala - sí, tienes que crear masty-keypair con Puttygen o importar la clave OpenSSH (?!) En Puttygen y guardar como masilla –

+0

Genial ahora tengo las llaves configuradas, intenté insertarlo Sincronizar: Me dio la mensaje de error 'crear y enviar datos ... [código devuelto por el comando 255 lun 20 de febrero 22:04:23 2012]' – lulalala

Cuestiones relacionadas