Question

Quelqu'un at-il essayé ou compris comment importer une prise en pension gitorious en github? J'utilise déjà github et je voulais voir s'il y avait un moyen de tirer d'un repo gitorious que je voulais suivre dans github.

Était-ce utile?

La solution

Comment serait-ce différent de la méthode normale de créer un dépôt sur Github?

  1. cloner le dépôt de gitorious
  2. Créer un nouveau dépôt sur GitHub
  3. Appuyez sur le dépôt jusqu'à github

Github ne se soucie pas où le dépôt provenait en premier lieu, il accepte tout ce que vous poussez à la hauteur.

Autres conseils

Immédiatement après avoir créé un nouveau dépôt sur GitHub, le site vous donne 3 jeux d'instructions personnalisées élégantes. Les 3 options différentes sont:

  1. Commencer à travailler sur un nouveau projet
  2. Appuyez sur un dépôt Git existant - c'est celui que vous voulez
  3. Appuyez sur un dépôt SVN existant

Si mon nom d'utilisateur était utilisateur1 et le nouveau repo a été appelé project1 , voici ce qu'il dirait:

existant Git Repo?

cd existing_git_repo
git remote add origin git@github.com:user1/project1.git
git push -u origin master

Les réponses déjà données vont simplement importer maître - si vous souhaitez importer le repo entier, y compris toutes les branches, étiquettes, etc, vous devez faire ce qui suit:

  • Créer un repo github vide
  • Cloner le repo gitorious utilisant le drapeau --bare - cela préserve toutes les branches / tags et ne crée pas une copie de travail:

    $ git clone --bare git://gitorious.org/USER/REPO.git
    
  • Répertoire des changements dans le repo local:

    $ cd therepo.git
    
  • Appuyez sur le repo à GitHub en utilisant le drapeau --mirror - ces copies toutes les branches, étiquettes, histoire etc:.

    $ git push --mirror git@github.com:USER/REPO.git
    
  • Supprimer la copie locale - vous n'avez plus besoin et ce n'est pas une grande utilité pour quoi que ce soit

    $ cd .. && rm -rf therepo.git
    

Une fois que vous avez fait cela, vous pouvez passer des prises en pension locaux à l'aide des commandes comme indiqué git remote rm/add ci-dessus.

Les réponses précédentes sont correctes, mais voici le processus étape par étape comprenant l'étape manquante de découpler la copie locale de Gitorious; sans elle, vous obtenez l'erreur lorsque vous essayez fatal: remote origin already exists d'ajouter Github comme nouvelle origine.

  1. Créer un repo cible vide sur Github
  2. repo Clone de Gitorious au niveau local
  3. Supprimer Gitorious comme origine
  4. Ajouter Github comme nouvelle origine
  5. Push-to-Github

Commandes:

git clone git://gitorious.org/USER/REPO.git
cd REPO
git remote rm origin
git remote add origin https://github.com/USER/REPO.git
git push --mirror https://github.com/USER/REPO.git

Vous aurez besoin évidemment de remplacer USER et REPO, et les deux dernières commandes sont fournies pour vous après l'étape 1 lorsque vous créez votre repo Github.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top