¿Cómo bifurcas tu propio repositorio en GitHub?


Tengo un repositorio público en GitHub. Quiero replicar o copiar y trabajar en un nuevo proyecto basado en este repositorio, pero no quiero afectar a cómo es ahora. Intenté bifurcarlo usando la interfaz de usuario de GitHub, pero no hizo nada.

Author: railgun, 2012-06-09

10 answers

No creo que puedas bifurcar tu propio repositorio.
Clonarlo y empujarlo a un nuevo repositorio es bueno, pero necesita:

git clone https://github.com/userName/Repo New_Repo
cd New_Repo
git remote set-url origin https://github.com/userName/New_Repo
git remote add upstream https://github.com/userName/Repo
git push origin master
git push --all

(véase git push)

Vea el proceso todo descrito en " Fork your own project on GitHub".


Seis años después (2016), ahora tienes el importador de GitHub que te permite importar un repositorio desde otra fuente... incluyendo GitHub.
Ver " Importar un repositorio con GitHub Importador"

https://help.github.com/assets/images/help/importer/import-repository.png

La respuesta de Narf (con votos positivos) también ilustra ese proceso.

Eso te permitirá crear un nuevo repositorio e importar el historial completo del antiguo al nuevo, usando su url de GitHub.

De nuevo: lo que obtienes es una copia, no una bifurcación real: no puedes hacer una solicitud de extracción del nuevo repositorio al antiguo.

 138
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 11:54:46

Una forma súper fácil de hacerlo en 30 segundos desde el sitio web de GitHub:

  1. Copia la URL de tu repositorio. Ej: https://github.com/YourName/YourOldRepo (pista: es la URL cuando miras la página principal de tu repositorio en github.
  2. Haga clic en el icono + en la esquina superior derecha.
    / images / content/10963878 / 53e8548b3fe2542e19f5664b0ae9f986.png
  3. Seleccione "Importar repositorio".
  4. Donde pide la "URL antigua", pegue la URL que copió en el paso #1
    / images / content / 10963878 / f93c91add276e861b57717b87abdbd71.png
  5. Introduzca el nombre de su nuevo repositorio y haga clic en Begin Import.
  6. ¡Eso es todo! Usted ahora tenga una copia del repositorio completo, con todo el historial de confirmaciones y ramas!

Limitaciones: En realidad no es una bifurcación real. Es una copia del depósito. No permitirá hacer pull requests de ida y vuelta.

 56
Author: narF,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-29 15:06:58
  1. git clone https://github.com/YOURREPO.git TargetRepoName
  2. cd TargetRepoName /
  3. git remote set-url origin https://github.com/TargetRepoName.git
  4. git push-u origin master
 5
Author: shekar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-19 12:47:44

Simplemente clónelo, cree un nuevo repositorio en blanco y púlselo.

 3
Author: mcepl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-06-09 19:37:13

La forma más sencilla de lograr el efecto deseado es crear un nuevo repositorio, luego seleccionar la opción importar y proporcionar la URL al repositorio que desea bifurcar.

Las imágenes de abajo te ayudarán:

Tenedor propio repo a través de la importación-1

Tenedor propio repo a través de la importación-2

 2
Author: Nabil_H,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-30 17:41:10

Seguí estas instrucciones oficiales para "Duplicar un repositorio" y parecía funcionar.

Https://help.github.com/articles/duplicating-a-repository /

Para crear un duplicado de un repositorio sin bifurcación, necesita ejecutar un comando especial de clonación contra el repositorio original y enviar un mirror al nuevo. Esto funciona con cualquier repositorio git, no solo con los alojados en GitHub.

 1
Author: phocks,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-10 08:53:25

La solución aceptada de VonC, desafortunadamente, no funcionó para mí ya que obtuve

Remoto: Repositorio no encontrado

Lo que funcionó fue lo siguiente:

  1. Crea un new_repo en github
  2. git clone new_repo
  3. cd new_repo
  4. git remote add upstream old_repo.git
  5. git pull upstream master
  6. git push origin master

Obtuve todo lo anterior de aquí.

 1
Author: Nick,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-07-24 21:48:58

Para los no expertos en tecnología que usan GitHub, aquí hay una solución simple como alternativa a otras grandes respuestas anteriores. Lo que necesitas es solo una aplicación de escritorio GitHub.

  1. Abra su propio repositorio de proyecto desde el navegador, y descargue como un zip, por ejemplo your-project-master.zip.
  2. Descomprima y cámbielo el nombre como su nuevo repositorio.
  3. Abre el escritorio de GitHub y añade tu nuevo repositorio navegándolo a tu nuevo repositorio de ruta local descomprimida. introduzca la descripción de la imagen aquí
  4. Publícalo en tu github, haciendo clic en publicar botón. No olvides añadir el nombre y la descripción:)
 0
Author: Zuzu Softman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-28 03:48:15

Acabo de probar esto, y funcionó:

  1. Fork su repositorio en una cuenta de la organización
  2. Renombrarlo
  3. Transferir la propiedad de nuevo a sí mismo
 -1
Author: Dominykas Blyžė,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-09 17:15:50

Cuando crea un nuevo repositorio, puede importar desde otro repositorio con el repositorio .url de git. Me tomó 30 segundos.

 -1
Author: Gino,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-07 12:41:19