Skip to main content
Nous publions des mises à jour fréquentes de notre documentation, et la traduction de cette page peut encore être en cours. Pour obtenir les informations les plus actuelles, consultez la documentation anglaise.

Importation de données à partir de systèmes de gestion de versions tiers

À l’aide de la suite d’outils git-import, vous pouvez importer à partir de Subversion, Mercurial et Team Foundation Version Control dans des référentiels Git sur GitHub Enterprise Server.

Importation de projets à partir de Mercurial

  1. Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Pour plus d’informations sur l’accès via SSH, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    $ ssh -p 122 admin@HOSTNAME
  2. Créez un clone brut du projet à l’aide de la commande ci-dessous, en spécifiant l’URL du projet source et un chemin d’accès à un référentiel temporaire :

    $ git-import-hg-raw HG-CLONE-URL/PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Passez en revue le fichier CSV (séparé par des virgules) dans /PATH/REPO-NAME.git/git-import/raw-authors.csv. Il doit contenir ces colonnes :

    • ID : l’auteur tel qu’il est stocké dans le référentiel d’origine, suivi d’un identificateur unique
    • NAME : l’auteur tel qu’il est stocké dans le référentiel d’origine

    Pour mapper les auteurs du référentiel d’origine à une adresse e-mail et un nom, créez un fichier CSV avec les colonnes ID,(ignored),GIT_EMAIL,GIT_NAME, qui remplace les informations de l’auteur pour tout ce qui contient « ID » par « GIT_EMAIL » et « GIT_NAME ».

    Exemple :

    • ID d’auteur d’origine : octocat@111111-2222-3333-4444-55555555555

    • Nouvelle adresse e-mail : octocat@github.com

    • Nouveau nom : The Octocat

      Pour mapper l’auteur d’origine au nouvel utilisateur Git, le fichier CSV doit inclure la ligne :

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Réécrivez les auteurs et les branches à l’aide du fichier CSV :

    $ git-import-rewrite --flavor hg --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Si vous ne l’avez pas encore fait, créez un référentiel vide sur GitHub Enterprise Server.

  6. Remplacez le répertoire de travail actuel par votre dépôt local.

  7. Envoyez le référentiel importé vers GitHub Enterprise Server :

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Importation de projets à partir de Subversion

  1. Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Pour plus d’informations sur l’accès via SSH, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    $ ssh -p 122 admin@HOSTNAME
  2. Créez un clone brut du projet à l’aide de la commande ci-dessous, en spécifiant l’URL du projet source et un chemin d’accès à un référentiel temporaire :

    $ git-import-svn-raw SVN-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Passez en revue le fichier CSV (séparé par des virgules) dans /PATH/REPO-NAME.git/git-import/raw-authors.csv. Il doit contenir ces colonnes :

    • ID : l’auteur tel qu’il est stocké dans le référentiel d’origine, suivi d’un identificateur unique
    • NAME : l’auteur tel qu’il est stocké dans le référentiel d’origine

    Pour mapper les auteurs du référentiel d’origine à une adresse e-mail et un nom, créez un fichier CSV avec les colonnes ID,(ignored),GIT_EMAIL,GIT_NAME, qui remplace les informations de l’auteur pour tout ce qui contient « ID » par « GIT_EMAIL » et « GIT_NAME ».

    Exemple :

    • ID d’auteur d’origine : octocat@111111-2222-3333-4444-55555555555

    • Nouvelle adresse e-mail : octocat@github.com

    • Nouveau nom : The Octocat

      Pour mapper l’auteur d’origine au nouvel utilisateur Git, le fichier CSV doit inclure la ligne :

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Réécrivez les auteurs et les branches à l’aide du fichier CSV :

    $ git-import-rewrite --flavor svn --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Si vous ne l’avez pas encore fait, créez un référentiel vide sur GitHub Enterprise Server.

  6. Remplacez le répertoire de travail actuel par votre dépôt local.

  7. Envoyez le référentiel importé vers GitHub Enterprise Server :

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Importation de projets à partir de Team Foundation Version Control

  1. Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Pour plus d’informations sur l’accès via SSH, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    $ ssh -p 122 admin@HOSTNAME
  2. Créez un clone brut du projet à l’aide de la commande ci-dessous, en spécifiant l’URL du projet source et un chemin d’accès à un référentiel temporaire :

    $ git-import-tfs-raw TEAM-FOUNDATION-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
  3. Passez en revue le fichier CSV (séparé par des virgules) dans /PATH/REPO-NAME.git/git-import/raw-authors.csv. Il doit contenir ces colonnes :

    • ID : l’auteur tel qu’il est stocké dans le référentiel d’origine, suivi d’un identificateur unique
    • NAME : l’auteur tel qu’il est stocké dans le référentiel d’origine

    Pour mapper les auteurs du référentiel d’origine à une adresse e-mail et un nom, créez un fichier CSV avec les colonnes ID,(ignored),GIT_EMAIL,GIT_NAME, qui remplace les informations de l’auteur pour tout ce qui contient « ID » par « GIT_EMAIL » et « GIT_NAME ».

    Exemple :

    • ID d’auteur d’origine : octocat@111111-2222-3333-4444-55555555555

    • Nouvelle adresse e-mail : octocat@github.com

    • Nouveau nom : The Octocat

      Pour mapper l’auteur d’origine au nouvel utilisateur Git, le fichier CSV doit inclure la ligne :

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Réécrivez les auteurs et les branches à l’aide du fichier CSV :

    $ git-import-rewrite --flavor tfs --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO_NAME.git
  5. Si vous ne l’avez pas encore fait, créez un référentiel vide sur GitHub Enterprise Server.

  6. Remplacez le répertoire de travail actuel par votre dépôt local.

  7. Envoyez le référentiel importé vers GitHub Enterprise Server :

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Pour aller plus loin