git clone
heroku便利ですね。ただでいろいろなフレームワークを使ったアプリケーションを試すことができます!Postgresも使えるし。
proxyでsshなどが許可されていない場合にgitを使おうとするとタイムアウトでうまくいかない場合があります
$ heroku git:clone -a APPNAME Cloning from app 'APPNAME'... Cloning into 'APPNAME'... ssh_exchange_identification: read: Operation timed out fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
proxy環境下だとHTTPくらいしか許可されていないのでHTTPでアクセスするオプションをつけることにします
$ export HTTPS_PROXY=http://proxy:port/ $ export HTTP_PROXY=http://proxy:port/ $ heroku git:clone -a APPNAME --http-git Cloning from app 'APPNAME'... Cloning into 'APPNAME'... remote: Counting objects: 137, done. remote: Compressing objects: 100% (131/131), done. remote: Total 137 (delta 48), reused 0 (delta 0) Receiving objects: 100% (137/137), 1.54 MiB | 642.00 KiB/s, done. Resolving deltas: 100% (48/48), done. Checking connectivity... done.
結構探したのですが、実はマニュアルに書いていました
https://devcenter.heroku.com/articles/http-git
git push
続いてgit pushです
$ git add . $ git commit [master c6abc8c] sample comment 1 file changed, 1 insertion(+) $ git push heroku master fatal: 'heroku' 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.
こんな感じでエラーになります。http用に設定してやります
$ git remote add heroku https://git.heroku.com/APPNAME.git $ git push heroku master Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 258 bytes | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0) ..
これだけ。簡単ですね
ちなみにHTTPでもherokuのgitにアクセスできます
$ git clone https://git.heroku.com/APPNAME.git
追記 20141226
どうもgit config –global http.proxy でPROXYを設定していると
could not resolve proxy ...
というエラーが出る場合があるようですが、この場合には~/.gitconfigの設定を削除すれば良いようです