【问题标题】:remove all autogenerated ._* duplicates from a repository从存储库中删除所有自动生成的 ._* 重复项
【发布时间】:2018-07-05 06:46:03
【问题描述】:

我为 OS X 运行 XAMPP-VM 并获得了一个在 svn 中推送的站点文件夹。完成 svn push 后,我在另一边的同事会看到站点文件夹,其中包含所有现有文件的 ._* 重复项。

我的网站是:

- index.php
- contacts.php
- uploads/dosmth.txt

他们都变成了:

- index.php
- ._index.php
- contacts.php
- ._contacts.php
- uploads/dosmth.txt
- uploads/._dosmth.txt 

尝试使用带有._*.gitignore 的git - 没有结果(.* 有效,但._* 无效)。尝试使用 GUI svn 和 GitKraken 之类的东西,期望这样的功能可能到位,但似乎并非如此。

我知道那些._* 文件是默认由 Mac 生成的,但奇怪的是它们是在我的情况下添加的,因为我正在使用 Linux VM (XAMPP-VM) 并使用 Linux 终端进行推送。我的目标是摆脱._* 文件。

【问题讨论】:

  • 在 smart svn 中找到了一个“忽略”按钮,解决了这个问题,但它的方式有点笨拙,大豆还是有一些更可靠的解决方案会很好

标签: linux git macos svn


【解决方案1】:

这适用于 Linux:

find . -name "._*" -print |xargs rm. 

首先尝试不带|xargs rm 部分,只是为了验证该查找实际上会列出您要删除的文件。

【讨论】:

  • find . -name "._*" -delete
  • 我很久以前就学会了我的大部分unix,-delete“当时”并不存在。但你是对的,较新的 find 现在有 -delete 选项。
  • 我也是。我记得find 没有选项-delete 的时候:-)
  • 非常感谢,这确实解决了它。甚至认为|xargs rm. 并没有真正删除文件,|xargs rm -rf 为我完成了这项工作。还没有测试出find . -name "._*" -delete,但对于像我这样不太喜欢 linux 的人来说似乎更容易记住。谢谢大家的建议。
猜你喜欢
  • 2014-08-22
  • 2013-11-01
  • 1970-01-01
  • 2011-06-04
  • 2018-12-13
  • 2014-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多