Git File推送到远程撤消

时间:2017-06-13 17:28:37

标签: git

我有一个文件,我在本地进行了更改然后提交并推送到远程。我实际上意识到它们是不正确的更改,并且只希望该特定文件返回其原始状态(而不是撤消整个提交),将git checkout文件名工作?或者我应该在本地删除文件并从主文件中删除?

3 个答案:

答案 0 :(得分:0)

您可以通过执行您可能需要的任何其他更改来修复您的提交,然后将其提交到git commit --ammed。然后,您可以使用git push --force origin来"覆盖"你以前的提交。

请注意,这可能会破坏其他人在此提交之外所做的任何工作,因此您应该非常小心地使用它。

答案 1 :(得分:0)

您可以使用

之类的内容将工作树中的文件恢复到以前的状态
git checkout HEAD^ -- path/to/file

(这假设文件在最近的提交中被破坏。您可以使用HEAD~2代替HEAD^返回2次提交等。)

然后你可以像对待任何其他变化一样对待它;如果不需要更改任何其他内容,您可以继续添加/ commit / push。

由于您已经推送了原始提交,因此我建议您使用--amend。这样做会需要强制推动,这会给那些在他们克隆回购邮件时拥有裁判的其他人造成麻烦。它可以恢复,所以如果你真的想与整个团队协调以略微清理历史记录,那么你可以 ;但我怀疑它是否值得。

答案 2 :(得分:0)

这对我有用(也许是因为我的特殊情况,但只是张贴它可以帮助任何人!) - > 1)撤消我对文件的更改 2)在主文件和我的文件副本之间做一个差异,看看是否没有差异 3)提交和推送 文件从Pull Request Files Changed(这就是我想要的)中消失了