我需要将一个文件提交到Heroku上的回滚提交。我目前正在运行一个回滚后,一个错误导致的问题,我们正在修复主。但是,我需要在回滚版本上更新app.js。这可能吗?
如果您想运行以前的版本,但您需要对其进行更改,则不需要进行回滚。回滚运行从上一个版本编译的应用程序段;在该版本中没有办法更改代码。
您需要从另一个分支运行。如果你的提交图看起来像这样:
o---o---o [old-release]
o---o [main]
,你想回到old-release
,但改变了一些东西,你需要在old-release
上创建一个新的分支,在那里做你的改变,提交它们,然后从那个新的分支部署。
一种方法是
- 用
git checkout -b bug-fix old-release
创建新的分支 - 进行更改
- 提交
- 通过运行
git push bug-fix:main
(或git push bug-fix:master
,如果您使用master
作为主分支)将bug-fix
分支部署到Heroku
这将构建一个全新的版本。
你的提交图现在看起来像这样:
A [bug-fix]
/
o---o---o [old-release]
o---o [main]
您可以选择将您的主要开发行重新定位到bug-fix
分支上:
o---o [main]
/
A [bug-fix]
/
o---o---o [old-release]
或者选择新的提交到main
:
A [bug-fix]
/
o---o---o [old-release]
o---o---A' [main]
如果你没有old-release
分支,你可以在创建bug-fix
分支时使用Git散列而不是分支名称,例如git checkout -b bug-fix abcd1234
。