【问题标题】:Is Git really necessary for deployment? [closed]部署真的需要 Git 吗? [关闭]
【发布时间】:2016-06-29 17:34:12
【问题描述】:

免责声明:我是网络开发的新手。

我在 Django 框架上使用 Python 构建了一个程序。我正处于准备部署我的网站并使其上线的时刻。

经过广泛研究,我注意到每条可能的部署路径都需要我使用 Git。

问题是 Git 在我的计算机上很难操作。我安装了错误的版本(我猜),我尝试修复兼容性问题一直是一场噩梦(我使用的是 Mac 10.7.5,由于某种原因无法升级到新的 MAC El Captain)

我的问题是:有没有办法不使用 Git 进行部署?此外,有没有一种方法可以在不使用版本控制的情况下进行部署(我是唯一一个构建此站点的人)。

我只想要最简单的部署路径,因为我是一个完全的新手。

PS 请不要将我指向此链接:Is git branches necessary for a single developer?

我的问题是关于完全使用 Git 的重要性。

【问题讨论】:

  • git 与部署无关,它是一些提供者用来检索代码的源代码控制。
  • 似乎每个部署教程都需要从 Git 存储库中提取代码。这是最有效的方法吗?
  • 即使您是唯一构建网站的人,您绝对应该使用版本控制。没有理由不这样做。但话虽如此,没有必要使用 git 或任何其他 VCS 进行部署。
  • 好的,非常感谢您强烈建议版本控制的建议。我想我强烈建议您了解 Git 以帮助我在 Web 开发方面取得长期成功 :(
  • 非常感谢您重申 Git 的重要性,并提供了另一个我可以研究的参考点(我一定会查看 SourceTree)

标签: django git deployment


【解决方案1】:

对于一些平台,部署需要 git。尤其是 Heroku,需要 git 将更改推送到在命令 heroku create 上定义的远程。有关详细信息,请参阅here

在其他情况下,您有更多选择,但需要注意的是,您可能会花费大量时间来配置系统,并且可能无法在不停机的情况下进行持续部署。

例如,使用 Amazon EC2 实例或 DigitalOcean,您基本上拥有一个基本的 Ubuntu 安装,您可以在该安装上控制几乎所有方面的配置,您将能够通过 SSH 或使用一个将文件发送到您的远程实例他们的客户。在这种情况下,您通常会执行以下操作:

  • 关闭您的 Django 服务器
  • 备份您现有的应用程序和数据库,以防万一
  • 为您更新的应用程序上传文件
  • 运行任何 manage.py 命令以进行迁移和更新
  • pip install -r requirements.txt 检查更新的依赖项
  • 重新启动您的服务器

如前所述,部署时 不需要 git,但大多数 Django 开发人员强烈建议您找到 git 问题的根源,因为它有助于防止潜在的破坏性当您的生产环境设置正确时,可以大大简化部署。

编辑:值得注意的是,当你的部署环境设置正确时,git 可以提供部署功能,但部署通常是一项过于复杂的任务,无法单独依赖 git。一种常用的方法是使用Fabric 和自定义fabfile 来自动化部署任务。与 git 配合使用,您可以获得版本控制、简化的部署命令以及在部署过程中运行任务的能力。

【讨论】:

  • 非常感谢您提供了一个非常明确的答案,即不需要 Git,但强烈建议在某些平台(如 Heroku)需要它的情况下使用它。对此,我真的非常感激。 +1 给你
猜你喜欢
  • 2011-11-23
  • 1970-01-01
  • 2012-12-19
  • 1970-01-01
  • 1970-01-01
  • 2011-12-09
  • 2019-10-29
  • 2021-04-26
  • 2018-10-23
相关资源
最近更新 更多