2010-10-25 3 views
12

Je tente de déployer une application rails vers Heroku et je rencontre des problèmes de base. Je suis nouveau à ce tout - rails, git, heroku - donc j'ai peur de me perdre sur ce qui est probablement un concept assez basique.Suppression de migrations db dupliquées à partir du référentiel git

J'ai poussé l'application à Heroku, mais quand je la migration db ($ heroku rake db: migrate), je continue à obtenir l'erreur suivante:

rake aborted! 
Multiple migrations have the name CreateFavorites 

Vérification mon dépôt GitHub, et bien sûr, il y a deux migrations:

20101007030431_create_favorites.rb 
20101012173735_create_favorites.rb 

le premier fichier - 20101007030431_create_favorites.rb - n'existe pas dans mon application locale, mais il est encore dans le dépôt github après que je commets. Comment puis-je supprimer ce fichier et synchroniser mon référentiel et mon application locale?

Merci d'avance.

+0

La migration supplémentaire n'est pas dans votre référentiel local si vous tirez? Que faire si vous clonez le repo à partir de zéro dans un nouveau répertoire, peut-être qu'il apparaîtra et vous pouvez le supprimer et valider? – njorden

+0

Merci, njorden. Considéré cela, mais puisque je ne suis pas sûr de la façon dont cela a été supprimé à l'origine, j'étais un peu inquiet de le supprimer à moitié. – iamlemur

Répondre

22

Si vous tapez "git status", cela devrait indiquer l'incohérence. Il dira quelque chose comme ceci:

# On branch master 
# Changed but not updated: 
# (use "git add/rm <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 
# 
#  deleted: db/migrate/20101007030431_create_favorites.rb 

Alors suivez les instructions ici. Pour le supprimer définitivement du référentiel, tapez:

git rm db/migrate/20101007030431_create_favorites.rb 
+0

puis "git commit" et "git push" comme d'habitude –

+0

Je jure, parfois les commandes les plus simples sont les plus difficiles à trouver dans tout le bruit. C'est exactement ce dont j'avais besoin, merci. – iamlemur

Questions connexes