【发布时间】:2017-06-18 12:20:54
【问题描述】:
我的问题不是技术问题,更像是来自更有经验的 GIT 用户的建议。
因此,我们的团队在 服务器 中有 2 个目录,一个用于 staging 测试我们所做的更改,另一个用于一个是公共目录,我们可以在其中找到实时网站的文件。到目前为止,我们使用 FTP 来更新公共目录上的文件,但现在我们切换到 GIT 以便我们可以跟踪我们的更改。
我使用钩子设置 GIT 环境,以便当我们从本地暂存存储库推送一些更改时,它们会自动部署到服务器上的暂存目录。现在我想对 public 目录做同样的事情,但是 一些文件(也许我的工作树也会有问题?)在 Staging 和 Public 是不同的,我也不想丢失已经在本地暂存存储库中进行的提交。
您认为进行这种转换的最佳和最有效的方法是什么?
我对程序的想法是这样的:
- 克隆服务器上托管的公共项目,
- 从服务器(公共)获取或合并我的本地存储库到克隆的存储库
- 现在我有一个单一的存储库,我可以将更改推送到服务器并强制推送(在开始时)到暂存区。
你觉得这样好吗?
【问题讨论】:
-
一句话,分支。这是分支非常适合的那种情况,然而,您的登台和生产设置应该相同。
-
@LukeBriggs 谢谢你的提示!你能简单描述一下这样的基本模型吗?
-
当然 - 我想不同的文件是配置文件?更改任何必要的内容以使配置(并尽可能)相同。如果这真的不可能,那么您的存储库将是测试代码,可以选择使用您的登台服务器签出的
stable分支(或签出master)。然后你的马厩的另一个分支(例如production)将包含必要的修改文件。
标签: git server fetch production-environment staging