【问题标题】:I edited readme on GitHub, now how do I squash edits我在 GitHub 上编辑了自述文件,现在如何压缩编辑内容
【发布时间】:2013-06-12 10:31:40
【问题描述】:

我在这方面完全是菜鸟。

其他人推荐的命令我都试过了,比如..

git rebase -i HEAD~3 
git rebase -i

这些命令在本地不起作用,我想是因为我在 GitHub 上进行了编辑。显然,我需要先以某种方式检查所有提交。如何签出所有提交并压缩它们。这些是我在意识到应该在本地进行之前对自述文件所做的一些简单编辑。

我在编辑器中得到一个如下所示的文本文件。

noop

# Rebase 2dff767..2dff767 onto 2dff767
#
# Commands:
#  s, squash = use commit, but meld into previous commit

更新: 好的,我做的是这个

git reset --soft HEAD~3
git commit
git push -f

感谢大家的帮助!

【问题讨论】:

  • 您需要软重置到您想要压缩、提交然后强制推送的开头。
  • 为什么要压缩编辑?你想解决什么问题?还有其他对 repo 的提交吗?
  • 这似乎是他们推荐的东西,以简化编辑以造福他人。目前没有其他提交。
  • 好吧,没关系。他们只推荐您尚未提交的内容。
  • 是的;一旦你的本地存储库被淘汰,重写历史记录是个坏主意。您可能会导致各种混乱。现在,如果你是这个 github 存储库的唯一用户,你可能会侥幸逃脱。否则,您的同事可能会拿着轮胎熨斗出现在您家门口,向您解释破坏构建的处罚。

标签: git github


【解决方案1】:

是的,您必须将更改拉下来,在本地修复分支并用力推动。它可能是这样的:

git pull
git rebase -i HEAD~3
git push -f

【讨论】:

  • 我很确定我试过这个,但由于某种原因它找不到我在网上所做的修订。软重置似乎已经成功了。谢谢!
猜你喜欢
  • 1970-01-01
  • 2021-04-03
  • 1970-01-01
  • 2023-04-03
  • 2012-04-17
  • 1970-01-01
  • 2022-12-21
  • 1970-01-01
  • 2012-05-30
相关资源
最近更新 更多