繁体   English   中英

如何恢复在本地删除但尚未提交的文件?

[英]How can I recover files I deleted locally but didn't yet commit?

我有这种情况:

MacBook:Ja.git alan$ git status
On branch alan-1
Your branch is up to date with 'origin/alan-1'.

Changes to be committed:
(use "git reset HEAD <file>..." to unstage)

    deleted:    Ja/Views/CardsTab/Xaml/Actions/QuizActions.xaml
    deleted:    Ja/Views/CardsTab/Xaml/Actions/QuizActions.xaml.cs

Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)

    modified:   Ja/App/SetResourceColors.cs
    modified:   Ja/App/Styles.cs
    modified:   Ja/Templates/Button/Button.xaml.cs
    modified:   Ja/Views/CardsTab/CardsTab.xaml
    modified:   Ja/Views/CardsTab/Xaml/Actions/Actions.xaml

有没有一种方法可以恢复刚刚删除的这些文件。 不确定这是否有帮助,但原始服务器仍具有这些文件的最新版本。

您可以按照提示信息开始尝试:

git reset HEAD -- Ja/Views/CardsTab/Xaml/Actions/QuizActions.xaml

这应该取消删除的阶段并使用以下命令还原文件:

git checkout -- Ja/Views/CardsTab/Xaml/Actions/QuizActions.xaml

正如torek所说,这可以一步完成:

git checkout HEAD -- Ja/Views/CardsTab/Xaml/Actions/QuizActions.xaml

如果您没有进行任何更改,而只想从远程起源分支进行更新,则可以执行

git reset --hard HEAD
git pull

并且您将与远程来源同步

但是请注意 :您所有的本地更改都将通过reset --hard丢失

如果您需要保存更改,请执行

git stash
git pull

现在检查文件是否在原位

并在需要时应用隐藏

git stash pop

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM