Plusieurs heroku comptes
Je vais avoir des ennuis lorsque vous travaillez avec plusieurs Heroku comptes sur mon ordinateur.
La chose est que cela fonctionnait très bien avant par changement de comptes avec le heroku gem. Mais maintenant (même si j'ai généré de nouvelles clés SSH) il l'habitude de travailler.
Quand je fais un git push heroku master
il dit seulement:
[email protected] pas d'autorisation d'accès my_app_name
Quelqu'un aurait-il des conseils sur comment je pourrais résoudre ce problème?
- ce n'ssh yourid@serveur -v donner?
- "Permission denied (publickey)."?
- Ah, une remarque... L'e-mail "[email protected]" n'est pas le même e-mail que le Heroku compte e-mail... il semble donc y avoir une sorte de mélange qui est à l'origine du problème.
- copie privée et publique des touches de votre git/.ssh/ diectory. qui fonctionne pour moi!
Vous devez vous connecter pour publier un commentaire.
Vous devez vous assurer que vous utilisez le mot clé ssh.
La façon de le faire (et de la façon dont le heroku comptes plugin vous invite) est d'ajouter un article à votre ssh fichier de configuration dans ~/.ssh/config. Par exemple, pour mon travail heroku compte que j'ai dans ma config ssh:
Maintenant, et c'est crucial, vous devez vous assurer que votre git distant est configuré pour utiliser que le même nom d'hôte. Dans ce cas, il est heroku.travail. Normalement, ce serait heroku.com si vous avez été en utilisant heroku avec un seul compte.
De sorte que vous aurez besoin de modifier le git remote (vous pouvez le faire dans le
.git/config
fichier de votre dépôt sur votre machine). Modifier le fichier ressemble à:Note le heroku.travail, pas heroku.com, et de remplacer les <nom> avec le nom de votre application (aka votre repo nom) sur heroku.
.ssh/config
faire en sorte queheroku.work
décide deheroku.com
IdentitiesOnly yes
était mon changeur de jeu! Grande réponse.J'ai résolu ce problème en utilisant le heroku-comptes plugin
voir ici pour des instructions
http://martyhaught.com/articles/2010/12/14/managing-multiple-heroku-accounts/
Vous avez obtenu d'être accepté en tant que collaborateur sur le projet que vous ne possédez pas.
Il fonctionne comme ceci (à l'aide de git) :
Et qui convient à tous les gens ; vous avez juste à pousser les autres à distance lors du déploiement sur les autres app.
J'aimerais ajouter quelques choses de nouveau la heroku-comptes plugin... cet exemple suppose que votre pré-existant heroku compte heroku.le travail et l'ajout d'un nouveau compte heroku.personnelle.
Il décrit également comment déplacer une application de l'un à l'autre, par exemple, si vous avez atteint votre 25-app max et de la création d'un nouveau compte et voulez aller de certains de vos projets expérimentaux d'applications de votre compte principal.
heroku accounts:set personal
) jusqu'à ce que après vous transférez l'application à l'aide de la herokusharing
de commande comme décrit https://devcenter.heroku.com/articles/transferring-appsAinsi, les mesures que vous avez probablement besoin sont:
heroku accounts:add work --auto
pour créer un nouveau heroku.compte de travail pour remplacer votre ancien compte par défaut (donc utiliser les mêmes informations d'identification que vous avez été en utilisant tout le long). Vous devez ÉGALEMENT télécharger votre nouvelle clé pour heroku:heroku keys:add ~/.ssh/identity.heroku.work.pub
heroku accounts:add personal --auto
pour créer un nouveau heroku.compte personnel (par exemple, utiliser vos nouveaux codes d'accès pour votre nouveau compte heroku). Vous devez ÉGALEMENT télécharger votre nouvelle clé pour heroku:heroku keys:add ~/.ssh/identity.heroku.personal.pub
heroku accounts:set work
(tout ce que fait le programme d'installation de git pour utiliser votre heroku.ce travail, qui est (unin cet exemple) de la même heroku compte que vous avez été en utilisant tout le temps, seulement maintenant, il est appelé heroku.travail.heroku sharing:add <new owner email>
(b) dans votre répertoire local, de l'interrupteur à l'application d'heroku.personnel à l'aide deheroku accounts:set personal
(c) transfert** l'application de l'ancien compte vers le nouveau compte à l'aide deheroku sharing:transfer <new owner email>
alors (d) supprimer l'ancienne adresse de courriel collaborateur (si vous le souhaitez) à l'aide deheroku sharing:remove <old owner email>
** Note le heroku lien que j'ai fourni, dit-il a des exigences particulières pour déplacer une application avec les ressources. Généralement, les supprimer payé resoures, puis les ajouter plus tard, ou d'avoir le soutien de le faire.
Le Heroku plugin https://github.com/ddollar/heroku-accounts a été désapprouvée. Heroku maintient désormais sa propre à https://github.com/heroku/heroku-accounts. Malheureusement, il ne semble pas stocker projet-par-projet de compte de laquelle il devrait être en utilisant ce que vous avez besoin pour exécuter
chaque fois que vous voulez utiliser le Heroku outil de ligne de commande.
Solution rapide pour les personnes ayant accès à l'interpréteur de commande bash: faire un répertoire bin (c'est déjà là dans les applications Rails) et de créer bin/heroku là. Contenu:
(remplacer "project_name" selon le cas) Puis exécutez
$ chmod +x/bin /heroku
Vous pouvez ensuite exécuter
$ bin/heroku exécuter la console
et utilise automatiquement le droit Heroku compte pour vous. Mieux encore est à ajouter ./bin dans votre path de sorte que vous êtes de retour à la simple exécution d':
$ heroku exécuter la console
J'ai commencé à utiliser le heroku-comptes plugin, mais alors réalisé que mon copain pourrait faire de moi un collaborateur sur son compte heroku et c'était tout ce qui était nécessaire.
Pour obtenir que cela fonctionne pour moi à la fois avec Git et le Heroku de la console, j'ai dû ajouter de créer le ssh config comme indiqué par bantic, mais j'ai eu aussi la création de deux télécommandes à mon .git config:
Cette a été mise sur écoute de moi pendant un moment, et je n'ai jamais trouvé une solution que j'ai aimé. Enfin trouvé un.
(OS X de réponse spécifique.)
Vous pouvez simplement créer de nouveaux utilisateurs. Allez dans les Préférences Système -> Utilisateurs & Groupes -> Ajouter un utilisateur ou un groupe de bouton. Vous pouvez créer un peu d'utilisateurs pour les différents heroku comptes, j'ai seulement le nom de la mine user1, user2, etc.
Ensuite, allez dans les Préférences Système -> Partage -> Distance de Connexion -> Permettre l'accès pour Tous les Utilisateurs
À ce stade, vous pouvez aller à un terminal et faites ce qui suit:
Ensuite, vous pouvez faire des choses comme ceci:
J'ai utilisé nano .git/config ensuite remplacé par la valeur de l'url de la distance "heroku" avec heroku.com > applications > paramètres > de Révéler config vars > Heroku URL Git
J'ai exactement le même problème.
Ce n'est pas la réponse, mais une temp solution est d'ajouter votre "standard" heroku e-mail en tant que collaborateur à l'application que vous ne pouvez pas y accéder.
je suis en utilisant win7
1) créer un autre compte d'utilisateur dans win7 et s'y connecter en
2) ouvrir git bash et connectez-vous à votre nouveau compte heroku
3) de créer et de télécharger une nouvelle clé RSA (instructions ici : https://devcenter.heroku.com/articles/keys)
4) alors faites ce que vous voulez (créer une nouvelle application, appuyez fichier .....)
5) chaque fois que vous devez travailler avec votre original heroku compte connectez-vous dans votre gain original de compte d'utilisateur et de travailler avec heroku
créer de nouvelles clés publique/privée pour les nouveaux e-mail comme suit
1) ssh-keygen -t rsa -C "[email protected]"
2) fournir nouveau nom de fichier dans lequel enregistrer la clé (/home/.ssh/seckey)
3) ajoutez Ensuite votre nouvelle clé pour ssh-agent:- ssh-add ~/.ssh/seckey
4) Puis ajoutez votre nouvelle clé pour heroku :- heroku clés:ajouter ~/.ssh/seckey
5) ajouter SSH Fichier de configuration comme ~/.ssh/config et le contenu comme suit
Hôte heroku.com
Nom d'hôte heroku.com
Le Port 22
IdentitiesOnly oui
IdentityFile ~/.ssh/seckey
L'utilisateur [email protected]
Hôte heroku.com
Nom d'hôte heroku.com
Le Port 22
IdentitiesOnly oui
IdentityFile ~/.ssh/id_rsa
L'utilisateur [email protected]
6) cloner le code en utilisant soit
a) git clone [email protected]:your-application.git
b) heroku git:clone -a-votre-application
Modifier la config pour ce projet, le réglage de l'e-mail. À partir de la racine de ce référentiel,
git config user.email <heroku email>