Changing heroku repo for pre-existing app - ruby-on-rails

I created a heroku repo some time ago for my rails app but deleted it because I was never using it. Now I have come to the point where I need to use heroku but I am encountering the following error:
! No such app as furious-mist-2295. which was the old repo name, so it is clearly not pushing to the new stack I created.
This is what I was considering trying, but am concerned about causing unnecessary changes to my git repo.
git remote rm origin
git remote add origin <URL to new heroku app>
git push -u origin master

Turns out it can be done with the following commands
git remote rm heroku
git remote add heroku git#heroku.com:new-application.git
Which is quite a simple little fix. Seemed rather difficult without knowing beforehand that these commands existed.
git remote -v came in handy to double check which repos in git and heroku were being pushed and fetched.

Related

Heroku: Permission denied (publickey). fatal: Could not read from remote repository when doing git push

I've spent the day reviewing all the existing solutions suggested on Stackoverflow and elsewhere, and tried them without success, and I'm still stuck with this.
The "heroku keys:add" solution doesn't work for me, so please don't link me back to that one.
I'm on MacOSX Lion. Thanks
Heroku no longer needs to use the git protocol & Public/Private encryption keys, instead you can use the following command to use your Heroku API key
heroku login
This command creates (or updates) a ~/.netrc file with your Heroku API key.
Now, any Heroku remote repository can be pushed to via the https protocol, rather than the git (ssh) protocol.
Check the address of your Heroku repository for your project with:
git remote -v
If your git remote address for Heroku starts with https://git.heroku.com/... then you are good to push. If the remote address starts with git then you need to update the remote address for Heroku
git remote set-url heroku https://git.heroku.com/...
Check the Heroku dashboard Settings tab for your app for the full Git URL for that app
If you have already git initialized and heroku toolbet is completely installed , enter this command $ git remote -v it will initialize heroku git and you can push to it.
Whenever you run the command $ git remote -v , will create a git repo in app_name/.git/logs//refs/remote/heroku , first check whether your git been initialized for heroku or not, even I had the same problem and I've corrected.

Can't find URL for Heroku repository

I've been following https://github.com/opentok/learning-opentok-ios/tree/basics.step-7 to try and get a video app to work on iOS using the OpenTok SDK.
I've already published an app called dongu using https://dashboard.heroku.com/new?template=https%3A%2F%2Fgithub.com%2Fopentok%2Flearning-opentok-php&button-url=https%3A%2F%2Fgithub.com%2Fopentok%2Flearning-opentok-php. I thought the git URL was git#heroku.com:dongu.git, however it doesn't work.
Error log:
News-MacBook-Pro:Dongu michaelnares$ git remote add heroku git#heroku.com:dongu.git
News-MacBook-Pro:Dongu michaelnares$ git add --all
News-MacBook-Pro:Dongu michaelnares$ git push heroku master
error: src refspec master does not match any.
error: failed to push some refs to 'git#heroku.com:dongu.git'
News-MacBook-Pro:Dongu michaelnares$ git heroku git:remote -a dongu
git: 'heroku' is not a git command. See 'git --help'.
Did you mean this?
checkout
All I want to do is add a simple HTML file to my Heroku app, however I can't find the URL to push to master from. Is there any way of finding it out?
Try
heroku git:remote -a dongu
then
git push heroku master
It might not be a git repo yet.
Run git init first.
Simply following the instructions in https://dashboard.heroku.com/apps/dongu/deploy/heroku-git did the trick, without me needing to know the remote URL, hopefully that's useful for anyone else having this problem.

fatal: 'git_url' does not appear to be a git repository

When i run
G:\blogx>heroku create
DL is deprecated, please use Fiddle
Creating name... done, stack is stack
web_url | git_url
on running
G:\blogx>git push heroku master
fatal: 'git_url' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
on running
G:\blogx>git remote -v
heroku git_url (fetch)
heroku git_url (push)
I am not sure why this error is being generated...
Heroku wants you to deploy from Git, but you haven't got a valid URL to a git repository in your setup. Somehow, you've ended up with something called git_url instead of an actual path to git.
The easiest way to fix this is to run git remote rm heroku to remove the broken one, find your application's name in the Heroku control panel, then run heroku git:remote -a your-app-name-here.
The Heroku guide to deploying from Git and the Heroku getting started guides is a useful reference.

Could not read from remote repository when pushing to Heroku (Rails Tutorial 5)

I pushed my chapter 5 version of Sample_App to git, and then when I 'git push heroku' I get:
warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:
git config --global push.default matching
To squelch this message and adopt the new behavior now, use:
git config --global push.default simple
See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)
! No such app as sample_app.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
I have read through some of the similar stackoverflow questions, and so I know to look at the 'git remote -v':
heroku git#heroku.com:sample_app.git (fetch)
heroku git#heroku.com:sample_app.git (push)
origin git#github.com:jeffbenner/sample_app.git (fetch)
origin git#github.com:jeffbenner/sample_app.git (push)
I have tried removing heroku and re-pushing - I get the same error message.
I looked at 'git config -l':
user.name=jeffbenner
user.email=xxxxx#gmail.com
alias.co=checkout
push.defaults=simple
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
core.precomposeunicode=false
remote.origin.url=git#github.com:jeffbenner/sample_app.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
remote.heroku.url=git#heroku.com:sample_app.git
remote.heroku.fetch=+refs/heads/*:refs/remotes/heroku/*
I cannot figure out why I cannot push to Heroku. I have re-logged into both my Github and Heroku accounts through the CLI. Any direction would be much appreciated.
I just came across the same problem. I did the following:
cd .git
vim config
removed all lines referencing Heroku
cd ..
heroku create
git push heroku master
... And voila, it worked.
Hoped this helps.
Did you try to specify the branch that you are pushing. Try git push heroku master. You can read about the warning in the docs. Let me know if it worked
Edit
I would just start over all together and create a new Heroku address. Follow these steps in order
First in your Gemfile create these groups
group :development do
gem 'sqlite3'
end
group :production do
gem 'pg'
end
Important, make sure you are in the root of your project and make sure you run bundle install like this
bundle install --without production
now git add . then git commit -m 'your commit message'
now run heroku login from the command line
now run heroku create
then git push heroku master
finally heroku open will open your app in your browser
If all of this doesn't work then move the app into a new directoy and start all over by first git init, git add . and git commit -m 'first commit in new location' and follow the steps above starting with heroku login
Note that heroku and github both use git but are independent entities. If you can push your code to github and you see it on github, then you should be able to push your code to heroku with no problem. If not you may be doing something wrong with git locally on your computer.
I had no idea why, but stopping running foreman in my local machine allowed a push to heroku master... Could be coincidence :|

rails app in development doesn't show up on heroku

Im developing a rails app. Following this tutorial here:
Tutorial
I finished a part and wanted to push all the changes up to heroku and view them there. I can view the site on my local machine. On heroku all I see is this:
I typed in the following commands after I made my changes, saw the site was working on my local computer.
$ git add .
$ git commit -m "Finish layout and routes"
$ git checkout master
$ git push
$ git push heroku
$ heroku open
I even looked at the heroku logs but couldn't make sense of whats going wrong! There is no content in my database, its empty. I just have views setup.
Why did you checkout to master? Are you working on another branch?
If that is the case, you will need to merge your changes to master before pushing your code (supposing you are on master which is already the case after the checkout):
git merge other-branch
Also don't forget to migrate your database on heroku.
heroku rake db:migrate
EDIT
To find out your current branch, type:
git branch
It will mark the current branch with a '*'.
If you have removed the public/index.html file, you'll have to do git rm public/index.html as well, then commit and push to Heroku. If you delete a file locally, git won't pick up on that without doing the git rm, and Heroku's knowledge of your app is 100% through Git.
I had a similarly strange (but unrelated) problem when I had an app that was storing uploaded files on Heroku. Every time I'd do a push they'd all go away. It confused me greatly until I realized that Heroku essentially wipes every time you do a push, and anything that isn't in git isn't kept. A good reason to use S3 or similar for uploaded file storage.

Resources