跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教一个 git 问题
未分類
31 3 月 2021

请教一个 git 问题

请教一个 git 问题

資深大佬 : Newyorkcity 6

项目一开始处于提交 A 。此时有一些文件仅仅是被 add 还没有 commit 。
因为要坐飞机,担心笔记本电脑在颠簸过程中搞坏了硬盘,所以先 commit 了下,产生了提交 B,然后将提交 B 推送到了远程仓库。
现在尘埃落定,我希望将提交 B 从 git 历史里除去(远程仓库和本地),形成一个只有提交 A,提交 C (一个功能完整完成了的一个提交)的美丽的直线。

我本来是想在本地 –soft 回到提交 A,然后产生提交 C 后 push force 覆盖远程仓库,形成一条直线。但发现没办法强制推送覆盖远程仓库。所以来请教这种情况下,怎么操作是最合理的?谢谢。

大佬有話說 (11)

  • 資深大佬 : revlis7

    开个临时分支应该更方便吧,原分支 force 不上去是因为远端有其他同事的 commit 吗?

  • 資深大佬 : sfqtsh

    操作并没问题。
    git push –force 为何失败?

  • 資深大佬 : zouchtssn

    pushf 到远程虽然世界线被拉直,但是 commit 会一直存在下去的

  • 資深大佬 : 2wex

    合理的做法就是把 B 永久留下
    只要推送到了远程仓库,就不应该再改变

    下次这种情况应该开临时分支

  • 資深大佬 : ayase252

    有人在你分支上改了吧,不建议 push force,merge 回来 push 吧。

  • 主 資深大佬 : Newyorkcity

    @revlis7
    @ayase252
    这就是我自己一个人写着玩的项目,不会有其他人干扰的。

    @2wex 谢谢建议,学习了。
    @sfqtsh 具体消息没看到,用的是 IDEA 自带的 git 工具,点击 push force 按钮发现按不下去

  • 資深大佬 : ClericPy

    上也提过了, 这种事情要用临时分支, 正式分支别轻易提交, 后面你用到 CI/CD 相关工具会后悔养成不好的习惯的

    可以看看 git flow 或者类似的东西(虽然 我更喜欢 Github flow 的分支管理, 足够简单, 原版 git flow 太复杂了, 我做的大部分东西都不会多版本共存, 滚动发布就够了), 正常情况公司里都不允许 force push 的

    自己玩的话, reset –hard 然后 push –force 也能用, 但是很少有人推荐这么操作. 没完成的代码正常都在临时分支, 命名一般也是 wip 标记

  • 資深大佬 : Dvel

    在终端里 push –force 就行了

  • 資深大佬 : jotpot

    飞机搞坏硬盘?第一次听说

  • 資深大佬 : ChangQin

    rebase HEAD 然后 push -f

  • 資深大佬 : msg7086

    push force 就行了。如果没法 force push 的话去软件的设置里看看。

    不要让别人的个人观点影响你。push force 这个功能既然有,就说明有其作用,只要使用得当就不会有问题。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具