如何用 git push 覆盖,覆盖对 git 服务器的更改?
Posted
技术标签:
【中文标题】如何用 git push 覆盖,覆盖对 git 服务器的更改?【英文标题】:how to overwrite with a git push, overwrite changes to the git server? 【发布时间】:2012-02-11 23:02:43 【问题描述】:我们正在将构建推送到 heroku,并希望在不引入最新更改的情况下推送。我基本上使用 github 存储库作为我的源代码控制存储库,并从几台不同的机器推送到 git heroku 存储库。由于我们有一些构建服务器推送到同一个 heroku 存储库,因此有时从构建服务器推送最新位会抛出一条消息,说我需要在提交和推送之前提取最新信息。
但是,由于来自构建服务器的代码保证是最新的,所以我想丢弃来自拉取的更改,只提交和推送文件而不进行合并。
有没有办法做到这一点?有关如何最好地设置它的任何其他建议?
【问题讨论】:
【参考方案1】:只做git push -f
(强制推送)
推送到 heroku 可能是 git push -f
的有效用例之一,但仍要小心并了解您在做什么。
【讨论】:
“小心”的一部分是“确保自从你的‘坏’推后没有人拉过。”如果有人拉了“原始”历史,那么当他们拉“修订”历史时,可能会发生糟糕的坏事。以上是关于如何用 git push 覆盖,覆盖对 git 服务器的更改?的主要内容,如果未能解决你的问题,请参考以下文章