到目前为止,我使用svn作为源代码控制。这时我已经开始了一个新项目,它存储在gitHub上。
问题是Heroku和GitHub都使用git。第一个发布app,第二个发布版本控制。
我的应用架构是:
base-dir <--github base
some-text-files (Readme, ... )
django-project-dir <--heroku base
manage.py
main-app-dir
settings.py
other-app-dirs
views.py
models.py
当我推送到gitHub base-dir并且所有子文件夹都被推送时。
至Heroku只应推动django-project-dir。
注意:我曾尝试在django-project-dir级别创建一个新的git存储库,但git将其作为子模块并从gitHub中排除。
因为这是一个新项目,我可以轻松地更改为另一个模式目录。
我的问题:
Heroku和GitHub git配置共存的简单方法是什么?
答案 0 :(得分:3)
您最好的选择可能是将完整存储库推送到Heroku,但要确保Heroku忽略运行应用程序所不需要的所有文件(请参阅https://devcenter.heroku.com/articles/slug-compiler)。或者,考虑创建两个存储库(一个用于文档,一个用于生产代码)。
答案 1 :(得分:1)
您最好的选择是将自述文件和其他文件移至项目根目录。然后只需将GitHub添加为一个单独的遥控器(当你在项目目录中时)。
git remote add origin https://github.com/USERNAME/REPO
然后你可以使用git push origin master
推送到GitHub。假设您正在推动以前专门用于Heroku的回购,那么您将不得不第一次强制推送(-f
选项)。
您仍然可以使用git push heroku master
推送到Heroku。
答案 2 :(得分:0)
你应该有两个遥控器。
这很好甚至是可取的。
你有github,这是你的远程代码存储库。
然后你通过heroku进行当前部署,这是第二个远程。
Heroku实际上是设置为使用git作为推动对其网站进行更改的系统的一部分。