svn commit后Git推送自动部署到Heroku?

标签 git svn heroku playframework continuous-deployment

我正在尝试为我的团队实现一个非常简单的自动部署系统。

我们的代码位于 SVN 存储库中,但我使用 heroku 来部署我的应用程序(使用 GIT)

目前我在本地执行以下操作:

    svn update
    git add .
    git commit -m "foo"
    git push heroku master

但是我希望自动化这个过程,这样当团队中的任何人提交新代码时,它都会自动推送到heroku并可以在我们的开发网站上查看。

有什么简单的方法可以做到这一点吗?也许设置一个 EC2 实例,在提交后通过 ssh 连接到它(使用 Hook 脚本)并运行上述命令?但这个解决方案似乎过于复杂..

最佳答案

是的,这似乎过于复杂,我只是建议最后转向 git。

在这种情况下,您将只需要关心一个 VCS(至少对于这个项目而言),并且您将能够创建其他有用的场景。

IE。将每个更改推送到 Heroku(并将其用作传输层)并不是一个好主意,有时您需要将某些内容推送给团队成员以分割正在进行的工作,而且很明显,如果您将其发送Heroku 处于这种状态,您的应用程序将会崩溃。因此,拥有一个(其他)共享存储库(origin)并将所有内容推送到那里会更容易,并且只有当某些重要部分完成并得到所有团队成员确认时,您才可以只用两行代码(或使用 shell 脚本)获取最新状态并推送到 Heroku。

如今,创建共享 git 存储库是一件简单的任务。如果您有任何具有 SSH 访问权限的主机帐户,则可以使用 gitolite 创建它它易于安装和管理存储库和用户。而且它是完全免费的。

另一种可能性是使用一些 git 提供程序,例如 GitHubAssambla您很可能可以找到一些免费/便宜的计划来托管小型项目。

关于svn commit后Git推送自动部署到Heroku?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12445891/

相关文章:

git - Windows 10 的 Git 客户端是否自动安装 SSH 客户端?

不相关历史的 Git rebase

svn - 支持/反对使用 svn 进行部署的原因?

svn - 在subversion中存储图像文件、psd文件、ai文件、flash

python - 如何从 python 中使用 mongolab 附加组件到 Heroku?

git grep 仅在未跟踪的文件中

git - 弧形土地 "Not possible to fast-forward, aborting."

svn - 使用私有(private) svn+bower 在 dockerfile 中不起作用

javascript - 错误 : Cannot resolve module 'babel-loader'

ruby-on-rails - 如何在heroku上使用rails使用twitter/datasift流