我正在使用PHPSorm,遇到了问题。我在PHPSorm(cmd+k)中提交了一些文件。但这是一个错误,我不应该推他们。现在我不明白,如何重置/删除从phPSorm提交。我用了git reset --在Terminal很难,但是PHPSorm没有任何变化-- commit仍然存在,我可以看到它,如果我尝试按(shift+cmd+k),那么我会看到所有以前的提交。
5gfr0r5j1#
只要提交还没有到达上游,命令行解决方案就是:
git reset HEAD^
HEAD^指的是HEAD * 之前的最后一次提交。HEAD表示最近的提交。当你使用git reset而不使用其他参数时,它会重置为最近的提交。添加--hard会清理工作目录中添加/编辑过的文件,自己决定是否需要这样做。
HEAD^
HEAD
git reset
--hard
pdtvr36n2#
我在IDE的左下角有一个Git按钮,如果我点击它,我可以看到本地和远程分支。如果你点击一个分支,你可以看到时间轴上的所有提交,你可以通过右键点击它们并选择Undo commit来删除它们。注意,你必须按照添加的顺序删除它们。
1dkrff033#
你可以尝试使用git revert <commit_sha>来恢复你不想要的提交,它不会删除一个提交,但是会撤销提交中所做的事情。
git revert <commit_sha>
ee7vknir4#
VCS〉Git〉重定基Git与PhpStorm的集成支持Rebase操作,并提供接口以确保在设置rebase参数时具有高度灵活性。https://www.jetbrains.com/phpstorm/help/rebasing-branches.html
0ejtzxu15#
类似的。在我的例子中,我提交并推送到github。但是其中两个文件太大,无法传输。我真的不需要它们,所以我从硬盘上删除了它们。然后我尝试再次推送,因为第一次推送失败了。但是我从推送中得到了相同大小的错误。我应该重置整个提交,再次提交,然后再次尝试推送吗?
5条答案
按热度按时间5gfr0r5j1#
只要提交还没有到达上游,命令行解决方案就是:
HEAD^
指的是HEAD
* 之前的最后一次提交。HEAD
表示最近的提交。当你使用git reset
而不使用其他参数时,它会重置为最近的提交。添加
--hard
会清理工作目录中添加/编辑过的文件,自己决定是否需要这样做。pdtvr36n2#
我在IDE的左下角有一个Git按钮,如果我点击它,我可以看到本地和远程分支。如果你点击一个分支,你可以看到时间轴上的所有提交,你可以通过右键点击它们并选择Undo commit来删除它们。注意,你必须按照添加的顺序删除它们。
1dkrff033#
你可以尝试使用
git revert <commit_sha>
来恢复你不想要的提交,它不会删除一个提交,但是会撤销提交中所做的事情。ee7vknir4#
VCS〉Git〉重定基
Git与PhpStorm的集成支持Rebase操作,并提供接口以确保在设置rebase参数时具有高度灵活性。https://www.jetbrains.com/phpstorm/help/rebasing-branches.html
0ejtzxu15#
类似的。在我的例子中,我提交并推送到github。但是其中两个文件太大,无法传输。我真的不需要它们,所以我从硬盘上删除了它们。然后我尝试再次推送,因为第一次推送失败了。但是我从推送中得到了相同大小的错误。我应该重置整个提交,再次提交,然后再次尝试推送吗?