繁体   English   中英

如何从git status列表中隐藏已删除的文件?

How to hide deleted files from git status list?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在寻找以下问题的最佳答案:

创建新分支时,必须始终删除文件夹public/assets/ (Ruby on Rails,我们仅在部署到生产之前才对资产进行预编译),因此这使我处于git状态,大约有500行,如下所示:

...
#   deleted:    public/assets/tinymce/tiny_mce_src.js
#   deleted:    public/assets/tinymce/utils/editable_selects.js
#   deleted:    public/assets/tinymce/utils/form_utils.js
#   deleted:    public/assets/tinymce/utils/mctabs.js
#   deleted:    public/assets/tinymce/utils/validate.js
...

所以我的逃犯开始对这个烂摊子毫无用处。 我想从git status隐藏这一行,但实际上应该删除此文件。

我不想提交该信息,因为我不想将此删除的文件推送到远程存储库。

2 个回复

其实你应该是具有在第一个地方你的Git这些资产。

如果您使用的是Capistrano之类的部署解决方案,则可以在部署到远程计算机上的过程中对资产进行预编译,从而省去了将它们存储在Git存储库中的麻烦。

要在使用capistrano进行部署期间启用资产编译,只需将以下内容添加到capfile(deploy.rb)中:

load 'deploy/assets'

现在,无论何时部署到服务器,capistrano都会在部署期间在服务器上进行编译。

然后,您可以简单地从git中删除public/assets目录,并将它们添加到.gitignore

很抱歉没有直接回答您的问题,但是您要的是针对无法解决问题的症状的一种补救措施。 除非您当然有充分的理由在Git中拥有资产,否则请说明原因,我们可能会找到更好的解决方案。

首先,您必须执行此操作有些麻烦,但是无论如何。

您可以通过:global命令删除所有匹配的行( @...@之间的内容),如下所示:

:global@^#\s\+deleted:\s\+public/assets/@delete _

要自动执行此操作,请为Git提交文件类型创建一个autocmd(在~/.vimrc ):

:autocmd FileType gitcommit :global...

或将原始命令放入脚本~/.vim/ftplugin/gitcommit_cleanup.vim

5 git status在哪里获取有关已更改文件的信息?

Git状态提供了有关存储库中已修改文件(处于未跟踪或暂存文件中)的信息,我希望能够访问这些文件列表-在通过提交执行之前对这些文件执行一些代码质量检查。 挂钩 让我知道是否可以访问此文件列表。 顺便说一句,我是Git的新手。 因此,如果我在假设中犯了错误,请对我放松 ...

8 如何忽略git status中的.gitignore文件? [重复]

这个问题在这里已有答案: 如何阻止.gitignore出现在未跟踪文件列表中? 19个答案 当我运行git status ,它列出了一堆我不感兴趣在列表中看到的.gitignore文件(它们由Eclipse在本地更新)。 我浏览了很多关于这个看似常见问题的帖子, ...

10 git status 显示现有文件已被删除

运行git status我看到一些标记为deleted的文件: 尽管这些文件仍然存在于文件系统中。 我尝试使用建议的方法来取消这些更改,例如 git restore --staged nta/executor/.gitignore 这对某些文件有效,但许多其他文件仍列为deleted 。 ...

2020-04-04 01:19:27 2 307   git
暂无
暂无

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

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