我们使用 AWS Elastic Beanstalk 和 eb cli 进行部署。
我们偶然发现的一个问题是无法重写提交。
在运行 git commit --amend
之后尝试使用 eb deploy
进行部署时,我们收到以下错误:
ERROR: InvalidParameterValueError - "Error making request to CodeCommit: Could not retrieve 0fb2ddf61003f05e67aeabe... (Service: AWSCodeCommit; Status Code: 400; Error Code: CommitIdDoesNotExistException; Request ID: bee56acc-201b-4a3f-...-...)"
我们如何克服这个问题并在运行 git commit --amend
后进行部署?
解决方案:
eb codesource local
,禁用 CodeCommit 集成。
很明显,CodeCommit 奇怪地部分集成了。它正在执行某种跟踪 - 因此出现错误,但是在运行 eb use --source codecommit/myrepo/mybranch
时失败了:
ERROR: NotFoundError - CodeCommit branch not found:
欢迎任何能进一步阐明该主题的人。
最佳答案
阅读“Configuring additional branches and environments ”,并考虑到任何修改都会重写历史(至少更改 HEAD 提交),您可能不需要:
- 强推
- 重新指定用于 eb 环境的分支源
即:
git push --force
eb use --source my-app/myBranch <eb-environment>
OP Gapi报告实际上必须停用代码提交:
eb codesource local
关于git - 使用 --amend 重写提交后 CodeCommit 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64363112/