Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git-删除远程文件,如何恢复_Git - Fatal编程技术网

Git-删除远程文件,如何恢复

Git-删除远程文件,如何恢复,git,Git,我有一个本地git,我做了一次提交(比如说我的第三次提交),然后我在一个远程网站上推到了origin 我无意中删除了一个远程文件,现在我尝试再次使用: git推送原始主机 但它会返回“所有最新的内容”” 我不确定是否删除了其他文件,因此如何将文件推送到远程并将“覆盖/添加缺少的文件”推送到上次本地提交。git push origin--force 即使这可以解决你的问题。但要小心,因为这是一个危险的命令 请参阅此处的解释:为了澄清,我认为您的意思是:您删除了本地回购协议中的一个文件,然后提交并推

我有一个本地git,我做了一次提交(比如说我的第三次提交),然后我在一个远程网站上推到了origin

我无意中删除了一个远程文件,现在我尝试再次使用:

git推送原始主机

但它会返回“
所有最新的内容”

我不确定是否删除了其他文件,因此如何将文件推送到远程并将“覆盖/添加缺少的文件”推送到上次本地提交。

git push origin--force

即使这可以解决你的问题。但要小心,因为这是一个危险的命令


请参阅此处的解释:

为了澄清,我认为您的意思是:您删除了本地回购协议中的一个文件,然后提交并推动了该更改?你想恢复那个更改吗?不,我把一个提交推到一个远程,然后我进入远程并从远程删除,本地是好的。好的。您在远程上有一个非裸repo,您还可以通过(远程)文件系统对其进行更改。用力推可能是最直接的解决办法。但是你也应该考虑避免这种设置(以避免将来的灾难)。我得到这个:错误:src refspec脉泽不匹配任何。错误:无法将某些引用推送到'https://...“看来你用了
maser
而不是
master
天哪,你说得对。好的,我修复了输入错误,仍然得到“所有内容都是最新的”,丢失的文件仍然丢失,以恢复到以前的提交,忽略任何更改:
git reset--hard HEAD
,然后尝试强制推送。最后一步,如果您有办法在github或github客户端上浏览您的文件,您可以转到
commits
选项卡,选择一个您知道包含该文件的提交然后将内容复制到本地文件夹结构中具有相同名称的新文件中。由于某些原因,
git reset--hard HEAD
force
再次无法工作