在同一个项目的一个目录中有两个不同的GIT repo

时间:2017-07-09 12:27:09

标签: git github repository gitlab

我想知道是否有可能在同一个项目的一个根文件夹中有2个不同的GIT存储库,如果我可以添加/ commit / push到它们两个而不会搞砸任何东西。

我想要实现的目标:

我有一个Django项目,我在2个不同的存储库中拥有它。一个在https://github.com上,我用于在Heroku上自动部署,另一个在https://gitlab.com上,我有我所有的合法提交/消息/门票/问题/ CI /等。

是否有可能以某种方式将两个repos放在我的Django项目所在的1个目录中,然后让我只做

git add .

git commit -m "message"

git push origin "whatever"

并将我的提交推送到两个回购?

目前我将项目放在2个不同的目录中,其中gitlab是我的主要项目,然后我将文件复制粘贴到github中并推送到那里,以便我可以在Heroku上部署更改。

P.S我更愿意从github repo中自动部署,而无需从gitlab设置任何部署。

谢谢,如果您正在关注这篇文章,请发表评论,这样我就可以提高质量。这是我的第一个问题!

谢谢!

编辑09-07-2017:

我找到了一种方法,可以轻松地将我的Django项目部署到Heroku,而无需使用github存储库。对于可能遇到此问题的任何未来人员,以下是我如何通过https://gitlab.com repo以最hacky / fast方式将我的Django项目部署到Heroku,而无需进行太多设置:

  1. 找到您的Heroku-API密钥Heroku,如果该链接不再有效,只需转到您的Heroku帐户设置,然后在那里找到您的Heroku API密钥
  2. 在设置了Procfile,wsgi.py等(所有部署设置)后,将所有更改推送到gitlab上的主分支。
  3. 最后,您要执行以下命令以部署到Heroku:

    git remote add heroku https://"API-key"@git.heroku.com/"app_name".git

    (不带引号示例:https://xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx@git.heroku.com/django_app.git

    然后你启动它:

    git push -f heroku master

    这可能会要求您进行身份验证,因此只需使用您的heroku凭据。

  4. 希望这对你有所帮助!

2 个答案:

答案 0 :(得分:2)

我并不喜欢这个想法 - 拥有两个存储库,然后从一个存储库复制粘贴到另一个存储库。您可以使用的一种方法是使用GitFlow。您只需要一个存储库(无论您选择哪个)。您将使用分支机构,您将有一个分支用于生产,将用于部署。您可以阅读更多相关信息(关于其他工作流程)here,也可以自行搜索。

祝你好运!

答案 1 :(得分:1)

AFIR Gitlab.com可以选择将镜像存储库推送到其他git服务器。转到a = t1.loc[t1['el_num'] == 1,'dose'] df = t1.pivot(index='dose',columns='el_num',values='value').reindex(a) print (df) el_num 1 2 3 dose 100.0 -0.000056 -0.000056 -0.000060 5052.0 -0.000056 -0.000056 -0.000061 10107.0 -0.000056 -0.000056 -0.000061 16561.0 -0.000056 -0.000056 -0.000061 22536.0 -0.000056 -0.000056 -0.000061 25020.0 -0.000056 -0.000056 -0.000061 35123.0 -0.000056 -0.000056 -0.000061 24.0 -0.000056 -0.000056 -0.000061 168.0 -0.000055 -0.000055 -0.000061

  

每次有人推送时,使用当前存储库的内容设置要更新的远程存储库。阅读更多   远程镜像存储库

     

每次有人推送时,都会自动从此存储库更新远程镜像的分支,标记和提交。

有了这个,你只能拥有一个远程源,而Gitlab会将你所有的更改推送到Github。我希望该功能可以添加到自托管的Gitlab-CE。