使用GithubDesktop 过滤 .DS_Store 文件导致多人协作冲突的问题[图/文]

53 篇文章 0 订阅
27 篇文章 0 订阅

这两天用GithubDeskTop 和同事同步代码的时候 出现了这个样一个问题
这里写图片描述
出现了 .DS_Store 的文件

首先大家都知道这是 系统的描述文件 就是这个文件push到git以后,导致和同事的代码

冲突

来一起解决吧

0.如何看到这个文件
显示Mac隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles YES
隐藏Mac隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles NO

记得重启Finder

网路上我也找了各种解决办法 比如

1.删除这个 .DS_Store 文件 在终端敲如下命令
1.  cd 你的项目路径

2.  find . -name '*.DS_Store' -type f -delete

可是,这个文件其实在你删除以后 还是会不断的重新自动生成,

2.如何禁止自动生成?

于是,我打算禁止他自动生成 于是 有这个代码

defaults write com.apple.desktopservices DSDontWriteNetworkStores true 

到此为止,以上全是做了无用功

于是,既然删除不掉,那么 ,不如在git上传的时候 过滤之

网路上还是有很多方法的 ,但是 那么一堆代码敲的甚是蛋疼

其实搞明白了还是很简单的 只要在你的项目里添加一个文件 就可以过滤

1. cd 你的项目文件夹路径
2. $ mkfile -n 1kb .gitignore

打开你创建的 .gitignore 文件

贴入如下代码

# .gitignore_global
####################################
######## OS generated files ########
####################################
.DS_Store
.DS_Store?
*.swp
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
####################################
############# packages #############
####################################
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

保存此文件

然后 你再去看你的 GithubDesktop 原本存在的 .DS_Store 文件 就已经不存在了

当然,如果你的git 根目录下 的 .gitconfig 文件内

这里写图片描述

还没有和我一样的信息

这里写图片描述
主要是登记你的邮箱和Github账号名 方便和GitHubDesktop通信

那就在终端添加 git的账号信息

这里写图片描述

然后你再去重启GithubDesktop 就能看到 .DS_Store 文件相关的信息 都不存在了

恭喜过滤成功

下面是一些参考链接

看不懂的 可以去看看这些

在Mac系统中如何显示和隐藏文件

让 Git 全局性的忽略 .DS_Store

如何删除GIT中的.DS_Store

转一篇Mac OS下不产生.DS_Store 隐藏文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值