You can have multiple remotes on a git installation. You would have a github remote, and a heroku remote.
Assuming you already have github setup, then you probably push to github with something like:
git push origin master
origin is your remote, and master is your branch.
Follow the instructions in getting started with Heroku choose your desired language and continue through the tutorial. This tutorial assumes that you already have github setup, and will show you how to create your heroku remote – via heroku create.
You then push to github as normal, and push to heroku via:
git push heroku master
The same format applies – heroku is your remote, and master is your branch. You are not overwriting your Github remote here, you are adding another, so you can still do both pushes via one commit with workflow such as:
git add .
git commit -m "Going to push to Heroku and Git"
git push origin master -- push to Github Master branch
git push heroku master -- push to Heroku