2016-01-20 121 views
0

我真的是新的Git,只是读了Bitbucket教程。Git删除没有痕迹

我为.txt文件做了一些错误的提交。 如何删除我在Bitbucket上做过的任何未来提交和评论?

首先,我做了

git reset --hard <commit_ID> 

然后

git reset --hard HEAD~1 

几次

git status 

你的分支是落后4个提交 '起源/主',可快进。

我该怎么办?

+0

要向上游推送这些更改,可以使用'git push -f'强制推送。如果有其他人可能正在使用您的项目,请使用'git reset'。 – 0xcaff

+0

[重置远程某个提交]可能重复(http://stackoverflow.com/questions/5816688/resetting-remote-to-a-certain-commit) – palimpsestor

回答

0

您已将本地分支复位4次,但您的起源/主标记具有之前的最后状态。要覆盖它们,您必须使用git push -f强制将本地更改推送到远程分支,并强制它们回到您的状态。

当你用力推动某件东西时,其他人在推动它时可能会遇到麻烦。

0

git reset --hard HEAD~x将删除当前的最后x提交提交了HEAD是(基本上是你的本地仓库的当前状态)。 Your branch is behind 'origin/master' by 4 commits, and can be fast-forwarded.表示您的“git服务器”(原始远程)或存储远程数据的任何地方(例如GitHub)有4个提交。通过重置删除本地提交将仅从您的计算机中删除它们,而不是从服务器中删除。如果您想要将它们全部删除并用本地状态替换服务器的状态,则可以运行git push -f,这会强制推送并用本地数据覆盖服务器数据。