暮秋深屿# 2022-06-29 09:34 采纳率: 0%
浏览 155

git多个commit只push一个

git 如何在本地有多个commit的情况下,push其中特定的一个commit?
eg:
commit 03
commit 02
commit 01

此时本地有三个commit,工作区是干净的,因为某些原因,我现在只需要push commit 02 这个提交,请问,应该如何做?

  • 写回答

2条回答 默认 最新

  • 五一编程 2022-06-29 09:47
    关注

    revert命令
    想要撤回中间某次commit,可以使用命令

    git revert commit_id

    如果这次提交是别的分支合并过来的,按照提示可知需要加参数-m

    git revert -m commit_id

    然后如果有冲突,解决冲突,然后重新commit,push到远程分支,这时远程仓库会多了一个commit,而原来想要撤销的那条commit记录还在,但是最终代码,也就是最新的commit,已经把不要的代码移除了,此时达到了我们的目的。

    如果想撤销的不是一次commit,而是连着的几次,那么

    git revert --no-commit commit1..commit2

    注意这是一个左开右闭区间,即不包括 commit1,但包括 commit2

    评论

报告相同问题?

问题事件

  • 创建了问题 6月29日