Git推送到Amazon S3部署资产?

时间:2011-03-03 22:37:56

标签: ruby-on-rails git deployment amazon-s3

你能在亚马逊上安装git并轻松推送资产(js,css,img)吗?像Heroku这样有资产和S3的东西会很棒。

有些人似乎使用JungleDisk将本地git目录同步到s3,但这太笨重了。我尝试在Mac上安装jgit但无济于事,那件事看起来很古老。还有什么或者这种类型的东西不起作用吗?

我已经尝试了大部分用于heroku资产部署/优化的宝石,但它们都要求你在heroku上托管它们,或者运行rake任务,这是不理想的。

6 个答案:

答案 0 :(得分:6)

您可以使用s3cmd --sync LOCAL s3://BUCKET/PREFIX来完成此操作。最好是每个资产的名称都有一个版本号。否则,您可能会遇到奇怪的问题,例如CSS的浏览器缓存版本1以及使用JavaScript的版本2,从而导致未定义的行为。

答案 1 :(得分:1)

如何设置EC2图像,在那里安装s3图像并设置裸git存储库以推送到所述S3图像?

答案 2 :(得分:1)

其他答案推荐的工具已过期。

这是最新的:https://github.com/schickling/git-s3

答案 3 :(得分:0)

见Jammit s3,这是一个很好的解决方案(zip + cloud):

https://github.com/railsjedi/jammit-s3

答案 4 :(得分:0)

Jammit s3的问题在于您无法正确管理文件版本。最终用户可能需要一段时间才能获得最新的JS / CSS文件更新。

如果您将PHP用于您的应用程序,则可能会发现这很有用(否则此代码可以根据您的需要进行调整):https://github.com/SupersonicAds/git-hook-php-s3-files-revisions

答案 5 :(得分:0)

Jammit S3没有我想要的控件,所以我编写了自己的CLI脚本:

https://github.com/bradt/git-deploy-s3