首页 > 解决方案 > 将本地代码库恢复到特定的 Heroku 版本

问题描述

我继承了一个代码库,在完成该项目后,我意识到以前的开发人员没有将代码推送到 Bitbucket,因此我的本地版本是错误的。所以我想从 Heroku 克隆一个特定的版本。

我怎样才能做到这一点

标签: githerokubitbucket

解决方案


实际上有一种方法可以做到这一点,而无需对您的应用执行任何破坏性操作。

首先,确保您在本地为您的 Heroku 应用程序安装了 git 遥控器。您可以通过heroku git:remote -a your-app-name从本地应用程序的根目录运行来执行此操作。(确认此运行cat .gitconfig。)

注意:重要的是要记住,Heroku 极力劝阻其用户不要依赖 Heroku 本身为您的应用程序托管的 git 存储库。这仅用于代码部署。

也就是说,可以git pull从 Heroku 上的应用程序中获取。不完全了解您的情况,很难确切知道该给您哪些命令。也就是说,如果git pull heroku master导致冲突,您可能会考虑强制 agit pull到本地分支。这样,master 分支就可以保持完整,而您仍然可以获得在 Heroku 上运行的代码的副本。

获得当前在 Heroku 上运行的代码后,运行heroku releases -a your-app-name以获取您的应用程序的最新版本列表。找到您感兴趣的并记下 SHA 哈希。这是您正在寻找的 git commit。

一旦你有了这个,你可以简单地使用git reset --hard abcdefabcdef你从你感兴趣的版本中检索到的 SHA 在哪里)。

现在您的本地存储库回滚到您正在寻找的特定提交。


推荐阅读