我有一个网站的 git 存储库,其中 master 分支代表生产代码。我被要求设置站点的“沙盒”版本,供系统的潜在用户进行试验,这样他们就不必在生产系统中这样做。
因为站点的沙盒版本需要清楚地标记,并且禁用了一些功能,所以我创建了一个沙盒分支(基于 master)并在那里进行了一些提交以添加警告消息等。
然后我将两个分支都推送到上游,并在 Web 服务器上检查了单独目录中的每个分支 - 一个用于生产,一个用于沙箱。
这很好用,但是当我想编写更多代码时问题就来了。一旦我将代码提交到主分支,它将在生产系统中更新,但沙箱不会看到新代码。因此,我将沙箱分支重新设置为 master,因此沙箱的提交始终位于生产之上。但是当然,一旦我这样做了,我就不能再将沙箱分支推向上游,因为它不再是快进。我必须登录 git 服务器,切换分支,进行软重置,然后重做推送。
用 git 肯定有更好的方法吗?我真正需要的是在当前签出的任何分支之上持续应用一些提交的某种方式。