如何从Git存储库中删除那些烦人的Mac OS X.DS_Store文件?
当前回答
以下方法对我来说效果最好。处理了不匹配的文件,以及本地修改的文件。作为参考,这是在运行git 1.7.4.4的Mac 10.7系统上。
查找并删除:
find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch -f
我还通过设置全局core.excludsfile来全局忽略.DS_Store。
首先,创建文件(如果还不存在):
touch ~/.gitignore
然后添加以下行并保存:
.DS_Store
现在配置git以全局尊重文件:
git config --global core.excludesfile ~/.gitignore
其他回答
我做了:
git checkout -- ../.DS_Store
(#将本地更改(永久)丢弃到文件)而且效果很好!
永久删除此文件的最佳方法:
生成全局.gitignore文件:
echo .DS_Store >> ~/.gitignore_global
让Git知道您希望将此文件用于所有存储库:
git config --global core.excludesfile ~/.gitignore_global
就是这样。DS_Store将在所有存储库中被忽略。
删除忽略的文件:
(.DS_Store)
$ find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch
打开终端并键入“cd<ProjectPath>”
删除现有文件:查找-name.DS_Store-print0|xargs-0 git rm-f--忽略取消匹配nano.git忽略添加此.DS_Store键入“ctrl+x”类型“y”输入以保存文件git-add.gitignoregitcommit-m'.DS_Store已删除。'
初始化存储库时,跳过包含
-u
这不应该是个问题。
推荐文章
- 如何禁用Git凭证管理器的Windows?
- Git 拉取与 Git 变基
- 在git中压缩提交是什么意思?
- 在Mac上安装MySQL后,使用ALTER USER语句重置MySQL root密码
- my.cnf文件在macOS上的位置
- 在GIT中合并2个分支
- git标签也会被推送吗?
- 嵌套的Git存储库?
- 如何从Mac OS X上卸载MySQL ?
- Git bash错误:无法fork子进程:没有可用的终端(-1)
- 有没有办法在SourceTree中获得两个分支的视觉差异?
- Git标记是否只应用于当前分支?
- Git分支:master vs. origin/master vs. remotes/origin/master
- 如何根据文件扩展名过滤git差异?
- 如何设置一个git项目使用外部回购子模块?