Tambien descargamos git que es un sistema de control de versiones que nos permitirá manejar junto a heroku las apliciones, lo pueden descargar de su pagina oficial http://git-scm.com/....
Si andan en windows y quieran utilizar la consola para trabajar con heroku, lo más probable es que se tengan que descargar el ssh-keygen que es un generador de contraseñas ssh para autenticarse con heroku y decir ¡Ey esta es mi pc y desde aquí estaré trabajando! con linux no hay lio ya que trae esa configuracion por defecto.
Tambien existe la opcion de trabajar y codear en la consola que instala git que se llama git bash, que la instala en windows y desde alli podremos hacer todo es casi parecida a la consola normal.
Abrimos la consola y si es por primera vez realizamos los siguientes codigos para que git nos identifique git config --global user.name "Mi nombre" y el otro código es git config --global user.email micorreo@dominio.com
Nuestra aplicacion debe tener estas dos configuraciones que mencionaré, tener el archivo package.json debidamente realizado mas o menos asi:
{ "name": "nombre-app", "description": "app in node js", "version": "0.0.1", "scripts": { "start": "node app" }, "author": "xxx xxx xxxx@xxxx.xxx", "repository": { "type": "git", "url": "https://github.com/xxxxxx/xxxxx-xxxx.git" }, "dependencies": { "express": "3.3.*", "node-gyp": "0.10.*", "socket.io": "0.9.*" }, "engines": { "node": "0.10.*", "npm": "1.3.*" } }
y crear un archivo llamado Procfile que contendrá lo siguiente:
nombreApp: node app.js // donde node app.js es el comando que utilizamos siempre para encender nuestra aplicación.Si la aplicacion contiene errores al momento de subirla nos dirá cuales son y nos pedirá configurarla bien para poder subirla. No es más ahora empecemos.
Lo primero que haremos es tipear en la consola ya sea en windows o linux heroku --version para saber si se instaló correctamente, nos aparecerá algo parecido a esto, varia segun el sistema que manejemos yo por ejemplo uso linux heroku-toolbelt/2.41.0 (i686-linux) ruby/1.9.3. y tambien git --version para comprobar que git esté instalado mas o menos asi saldrá en la consola git version 1.8.1.2 si surgen errores a la hora de instalacion de estas cosas, lo mejor es seguir navegando e informarse de ello.
Una vez comprobada la instalación procederemos a loguearnos con heroku y pulsamos el siguiente comando heroku login luego nos pedirá el correo y contraseña el cual debemos suministrar igual a la que registramos en la pagina de heroku, te pedira que si quiere generar la clave ssh y logicamente pulsamos que si para poder completar este paso, heroku nos pide unas frases para identificar la contraseña que se va a crear y pulsamos cualquiera, luego de este paso ya estaremos logueados.
Vamos al directorio de nuestra aplicación es decir cd /caperta/aplicacion o donde se encuentre la aplicación que deseamos subir. Luego de estar metidos en el directorio de la aplicacion procedemos a crear un repositorio local y vamos a pulsar git init este comando crea el repositorio y ahora pulsamos git add . para tener listos todos los archivos de la aplicación o si es de su preferencia subir cada uno paso a paso y hacerle el commit respectivo solo es pulsar git add xxxx donde xxxx es el nombre del archivo o la ruta exacta o caperta de lo queramos subir y despues git commit -m "descripcion de la subida" para insertarla al repositorio local, si ya tenemos una aplicación en heroku pulsamos heroku git:remote -a nombreApp donde nombreApp es el nombre de nuestra aplicacion ya creada, pero si no tenemos nada creado aun podremos hacerlo desde aquí mismo, pulsando heroku create nombreApp donde nombreApp es por supuesto el nombre que le daremos a la aplicación nueva, o si no lo colocan heroku les asignara uno aleatoriamente.
Luego de creado el repositorio y la aplicación en heroku nos disponemos a pasar los archivos del repositorio a la aplicación creada en heroku y para eso pulsamos git push heroku master donde heroku es el nombre remoto de la aplicación que creamos, o si no estamos seguros pulsamos git remote -v para saber que repositorios remotos hay, y master siginifica que desde el branch master osea donde tenemos el repositorio local vamos a pasar los archivos.
Seguido nos mostrará y subirá los archivos a la aplicación, si detecta algun error nos lo dirá y tocará arreglarlo. el lenguaje manejado en la consola es en ingles pero un ingles muy básico.
¡Espero le haya sido de utilidad!