Avant de commencer
Vous avez besoin de :- Un accès à l’ancien projet et au nouvel espace de travail ou compte.
- Environ une heure de temps concentré pour le basculement final. Les étapes précédentes peuvent s’étaler sur plusieurs jours.
- Si votre application a une adresse web personnalisée, un accès à l’endroit où vous gérez ce domaine.
Prévoir l’interruption de service
Pensez-y comme ouvrir une seconde boutique puis fermer la première. Il y a une courte période où l’ancienne boutique est fermée et la nouvelle n’est pas encore ouverte. Pendant ce temps, personne ne peut utiliser votre application. Combien de temps l’application est-elle hors ligne ? Généralement de 15 à 60 minutes. Cela dépend du volume de données de votre base de données et de la rapidité de mise à jour de votre adresse web. Vais-je perdre des données ? Seulement si quelqu’un ajoute des données à l’ancienne application après que vous avez copié la base de données. Pour éviter cela, vous mettez l’ancienne application hors ligne avant de faire la copie finale. Ce guide est ordonné pour que cela se produise ainsi. Puis-je annuler ? Oui. L’ancien projet n’est pas supprimé. Si quelque chose ne va pas, republiez l’ancienne application et elle fonctionnera exactement comme avant. Quand dois-je le faire ? Choisissez un moment où peu de personnes utilisent votre application. Prévenez vos utilisateurs à l’avance si possible.Étape 1 : copier le code vers un nouveau projet
Choisissez une méthode. L’ancienne application reste en ligne pendant cette étape. Les deux méthodes transportent votre code. GitHub conserve toujours votre historique de commits, tandis qu’un zip ne conserve l’historique que s’il inclut le dossier.git :
Via GitHub
Poussez l'ancien projet vers GitHub
Accordez l'accès au nouveau compte
Importez dans le nouvel espace de travail
Vérifiez la copie
Via fichier zip
Téléchargez l'ancien projet
- Dans l’ancien projet, ouvrez l’outil Shell.
-
Collez cette commande et appuyez sur Entrée. Elle crée un fichier nommé
project.zipet exclut les dossiers que Replit peut reconstruire lui-même : -
Vérifiez la taille. Collez cette commande et appuyez sur Entrée. Elle affiche la taille en Mo, comme
150Mpour 150 Mo : -
Si la taille dépasse 200 Mo, réduisez le fichier en excluant votre historique de modifications. Collez les deux lignes et appuyez sur Entrée :
N’excluez
.localet.gitque lorsque vous devez réduire le zip sous 200 Mo. Ces exclusions ne suppriment aucun des deux dossiers de l’ancien projet. Cependant, un zip sans.gitn’inclut pas l’historique des commits du projet. Utilisez la méthode GitHub si vous devez préserver l’historique. -
Trouvez
project.zipdans l’arborescence de fichiers, sélectionnez le menu à trois points à côté, puis sélectionnez Télécharger.
.cache contient l’état interne de Replit, y compris les valeurs de secrets mises en cache. Excluez-le toujours des fichiers zip que vous créez manuellement. Si votre projet a d’autres dossiers générés volumineux, ajoutez-les à la liste d’exclusion.Importez dans le nouvel espace de travail
Vérifiez la copie
.git, votre historique de commits est venu avec. Si vous avez utilisé la commande d’archive réduite, le nouveau projet démarre sans historique de commits. Replit réinstalle les dépendances exclues pendant l’importation.Étape 2 : configurer la nouvelle application
L’ancienne application est toujours en ligne. Dans cette étape, vous faites fonctionner entièrement la nouvelle application avec une copie de test de vos données, afin que le basculement final soit rapide.Ajoutez vos Secrets
Reconnectez les Connecteurs et autres services
Publiez la nouvelle application
replit.app et sa propre base de données de production vide. Ne connectez pas encore votre domaine personnalisé.replit.app et utilisez-la comme le feraient vos utilisateurs. Corrigez tout ce qui est cassé avant de continuer. Vos utilisateurs n’ont pas encore été affectés.Étape 3 : basculer vos utilisateurs vers la nouvelle application
C’est la partie avec interruption de service. Faites-le en une seule session.Mettez l'ancienne application hors ligne
Copiez la base de données une dernière fois
Pointez votre adresse web vers la nouvelle application
replit.app, partagez plutôt la nouvelle adresse avec vos utilisateurs.Confirmez que la nouvelle application est en ligne
Copier la base de données
La copie du code ne touche pas votre base de données. Copiez les données avec les outilspg_dump et pg_restore de PostgreSQL, disponibles dans le Shell des deux projets. Les étapes 2 et 3 renvoient toutes deux ici. Les commandes sont les mêmes chaque fois. Seule la cible change.
Exportez les données depuis l'ancien projet
backup.dump dans votre arborescence de fichiers :- Ouvrez l’outil Database, sélectionnez la base de données de production, et ouvrez Settings.
- Copiez la chaîne de connexion.
- Dans la commande ci-dessus, remplacez
"$DATABASE_URL"par la chaîne de connexion, en conservant les guillemets.
Déplacez le fichier dump vers le nouveau projet
backup.dump et téléchargez-le. Puis téléversez-le dans le nouveau projet avec l’option Upload files de l’arborescence de fichiers.Si vous avez copié le code via GitHub, ne committez pas le dump. Déplacez-le séparément afin que vos données n’atterrissent jamais dans le dépôt.Importez les données dans le nouveau projet
"$DATABASE_URL".Cela supprime tous les objets correspondants dans la base de données cible, puis charge les données. Quand elle se termine sans sortie, cela a fonctionné.pg_restore échoue avec des erreurs de rôle ou de politique, votre base de données utilise des rôles PostgreSQL personnalisés qui n’existent pas encore dans le nouveau projet. Contactez le support pour obtenir de l’aide.Recréer ce qui n’est pas copié
Le reste de la configuration du projet se trouve en dehors du système de fichiers. Recréez chaque élément dans le nouveau projet :En cas de problème
L’ancien projet est toujours là. Pour revenir en arrière :- Dans l’ancien projet, ouvrez l’outil Publishing et sélectionnez Publish.
- Si vous avez déplacé un domaine personnalisé, déplacez-le à nouveau de la même façon.
Nettoyage
Attendez une semaine environ pour vous assurer que la nouvelle application fonctionne. Puis :- Supprimez
backup.dumpdes deux projets et de votre appareil. Chaque copie contient un export complet de vos données. - Optionnellement, supprimez l’ancien projet.
Ressources associées
- Transférer une application vers Teams : Le transfert intégré pour déplacer un projet vers ou entre des espaces de travail d’équipe
- Importer depuis un fournisseur : Toutes les sources d’importation prises en charge
- Corriger une application publiée utilisant une base de données partagée : Plus de dépannage
pg_dumpetpg_restore