如何在git中提交并完全覆盖而不进行任何合并?

如何在git中提交并完全覆盖而不进行任何合并?,git,visual-studio,Git,Visual Studio,我不知道该怎么做。我是唯一一个在我的项目上工作的人。当我需要帮助时,我提交并将我的更改推送到github,只是为了从需要查看当前状态代码的人那里获得帮助。在推到github之后,我想回滚最后一次提交,这样我就可以在继续修改的同时看到最后一次真正提交与当前代码之间的差异。我使用的是VisualStudio代码及其Undo Last Commit菜单项,不管运行什么git命令 当我这样做时,我会遇到很多合并冲突问题。这似乎不对,因为我是唯一一个在我的项目上工作的人。它似乎把我以前的承诺当作是别人的工

我不知道该怎么做。我是唯一一个在我的项目上工作的人。当我需要帮助时,我提交并将我的更改推送到github,只是为了从需要查看当前状态代码的人那里获得帮助。在推到github之后,我想回滚最后一次提交,这样我就可以在继续修改的同时看到最后一次真正提交与当前代码之间的差异。我使用的是VisualStudio代码及其Undo Last Commit菜单项,不管运行什么git命令

当我这样做时,我会遇到很多合并冲突问题。这似乎不对,因为我是唯一一个在我的项目上工作的人。它似乎把我以前的承诺当作是别人的工作,并就这一点和我现在所做的区别进行谈判

我不希望git与上一次提交进行任何比较,而只是接受我的新代码。我该怎么做


编辑:为清晰起见,更新了最后一句。将“it”改为“git”。

因为沟通不是问题,所以你在做初稿,征求意见,而不是为了使用而发布,你可以完全自由地进行创作和推广
git reset
用于重置祖先,因此在将其中一个用于注释快照后,请执行
git reset--soft@
或仅执行
git reset@
,区别在于soft reset只保留索引。这两种方法都从正在使用提交构建的历史记录中删除了当前分支提示。下次要推送快照时,您必须强制替换(
git push-f
)旧快照或给它一个新名称,因为git会注意到新提交缺少已经存在的历史记录。

您的问题不清楚。在第一段中,您写道:“我想回滚最后一次提交,以便在我继续进行更改时,可以看到最后一次真正提交与当前代码之间的差异。”在最后一段中,您说“我不希望它与最后一次提交做任何比较,而只是接受我的新代码。我该怎么做?”我的建议是,您需要花一些时间来理解git,并学习如何使用命令行界面尝试
git reset--soft@
git reset@
,这取决于您希望为下一次提交保留什么内容。@jthill我想这可能是我问题的部分答案。你能把它具体化一点吗?可能需要一些git命令来提交、推送和回滚更改,以便将我的更改放在github上供其他人查看,然后将我的本地代码恢复到原来的状态。我认为这是答案的一部分,但您使用的是GUI及其“友好”菜单,它启动了天知道的功能,让我像你一样不知道它到底在做什么。我也很乐意使用命令行。编辑并没有禁止这样做。你需要澄清我想要达到的目标吗?