小编Ani*_*nsh的帖子

如何从 Heroku 上的 git 子模块自动提取最新提交?

我在 Heroku ( http://www.rajcovid19.info )上托管了一个 COVID-19 报告 Web 应用程序,我从约翰霍普金斯大学 Git 存储库获取了数据。我已将存储库添加为主项目存储库的子模块,我用它来将更改推送到 Heroku。这使我能够将更新拉取到我的计算机上的 COVID-19 存储库,然后将这些更改推送到 Heroku。但是,我无法将 COVID-19 子模块的最新提交直接拉至 Heroku 应用程序。我尝试使用 GitPython,但每当我尝试提取更改时,它都会产生“无效的 Git 存储库”错误。

我目前针对此问题的工作解决方案是在我的笔记本电脑上制作一个脚本,定期检查 COVID-19 存储库是否有更改,然后将它们推送到 Heroku 应用程序。

这可行,但要求我每天至少打开一次笔记本电脑。

是否有可能以某种方式让 Heroku 自动将最新提交拉到子模块?

编辑:

根据 Heroku 的说法,该服务有一个“临时存储”: Heroku 临时存储

我认为这也可能使事情变得复杂?

至于我的 GitPython 代码不起作用,它是:

GitPython 1

GitPython 2

那是:

# Root directory for the COVID-19 Local repository root=os.getcwd()

if os. path.isdir(root+"/COVID-19"):
  root+="/COVID-19"
  repo=Repo(root) git=repo.git git. pull
else:
  root+="/COVID-19"
  os.system("git clone https://github.com/CSSEGISandData/COVID-19.git")
Run Code Online (Sandbox Code Playgroud)

这适用于我的计算机,但在 Heroku 应用程序上出现“无效的 Git Repo”错误。我做了一些调试并确保 Heroku 应用程序上的存储库路径正确,但它似乎没有帮助。

python git heroku web-deployment

6
推荐指数
1
解决办法
318
查看次数

标签 统计

git ×1

heroku ×1

python ×1

web-deployment ×1