heroku上のpythonアプリで使うライブラリをgithubからインストールする

djangoアプリなどをherokuにアップロードするとき、依存ライブラリはrequirements.txtに定義しておきます

こんな感じですね。

requirements.txt

Django==1.4
distribute==0.6.24
dj-database-url==0.2.1
django-tastypie==0.9.11
gunicorn==0.14.6
httplib2==0.7.4
psycopg2==2.4.5
simplejson==2.6.0
wsgiref==0.1.2


でローカルで使っているライブラリをそのままrequirements.txtにするときはpip freezeを使うと思うんですが

pip freeze > requirements.txt


django-tastypieの0.9.12-alphaをローカルで使っていると以下のようになりまして、これだとdjango-tastypieのインストールがエラーになります。

requirements.txt

Django==1.4
distribute==0.6.24
dj-database-url==0.2.1
django-tastypie==0.9.12-alpha
gunicorn==0.14.6
httplib2==0.7.4
psycopg2==2.4.5
simplejson==2.6.0
wsgiref==0.1.2


pip install ****で入らないものは入りません。

でどうするかといえばこう書くみたいです。

Django==1.4
distribute==0.6.24
dj-database-url==0.2.1
git+https://github.com/toastdriven/django-tastypie
gunicorn==0.14.6
httplib2==0.7.4
psycopg2==2.4.5
simplejson==2.6.0
six==1.2.0
wsgiref==0.1.2

pip install **** の **** に使った文字列をそのまま書いておけってことですね

つまりgithubからインストールしたライブラリを使っている場合は、pip freeze > requirements.txtした後に手で修正が必要