当前位置:  开发笔记 > 编程语言 > 正文

如何删除已删除的文件显示在我的本地git状态?

如何解决《如何删除已删除的文件显示在我的本地git状态?》经验,为你挑选了2个好方法。

开发人员在服务器上添加了一个图像目录,而没有将该文件夹添加到.gitignore文件中.当我做了一个git pull它拉了那些文件(数百个文件).我将文件夹添加到服务器上的.gitignore,但不是我的本地系统.然后我在本地(永久)删除了文件.当我执行git状态时,所有这些已删除的文件仍会显示.我怎么能抑制他们出现?

更新: 感谢所有的帮助.为了确保没有错过理解:我确实想要将文件保留在服务器上,只是想从git中删除它们.



1> NightFury13..:

我发现这是完成任务最简单的方法.

$> git add -u    (or you may use --update)

原始状态:

$> git status .

On branch master
Changes to be committed:
  (use "git reset HEAD ..." to unstage)
deleted:    .ipynb_checkpoints/Untitled-checkpoint.ipynb
deleted:    CVPR 1 hr tute-Backup.ipynb
deleted:    cifar10-test.t7
deleted:    cifar10-train.t7
deleted:    cifar10torchsmall.zip
deleted:    create_advr.lua
deleted:    criterion_cifar10_lr_0.001_epoch_13.t7
deleted:    train_cifar10.lua
deleted:    trained_net_cifar10_lr_0.001_epoch_13.t7

因此,要从当前目录中删除所有已删除的文件,我使用.

$> git add -u .
$> git commit -m "removing deleted files from tracking"
$> git push origin master

最终国家:

$> git status .

On branch master
nothing to commit, working directory clean

希望这可以帮助 :)



2> Matt Ball..:

您可能需要git rm删除的文件.来自Pro Git:

删除文件

要从Git中删除文件,您必须将其从跟踪文件中删除(更准确地说,将其从暂存区域中删除)然后提交.该git rm命令执行此操作,并从工作目录中删除该文件,因此下次您不会将其视为未跟踪文件.

如果您只是从工作目录中删除该文件,它将显示在输出的"已更改但未更新"(即未分级)区域下 git status:

$ rm grit.gemspec
$ git status
# On branch master
#
# Changed but not updated:
#   (use "git add/rm ..." to update what will be committed)
#
#       deleted:    grit.gemspec
#

然后,如果你运行git rm,它会暂停文件的删除:

$ git rm grit.gemspec
rm 'grit.gemspec'
$ git status
# On branch master
#
# Changes to be committed:
#   (use "git reset HEAD ..." to unstage)
#
#       deleted:    grit.gemspec
#

下次提交时,文件将消失,不再被跟踪.如果您已修改文件并将其添加到索引中,则必须使用该-f选项强制删除该文件.这是一项安全功能,可防止意外删除尚未记录在快照中且无法从Git恢复的数据.

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有