(.DS_Store)避免多人提交代码到GitHub上起冲突

https://www.gitignore.io/gitignore的生成网址

在多人合作的项目里,git pull origin master执行完之后出现以下问题:

Auto-merging .DS_Store CONFLICT (content): Merge conflict in .DS_Store Automatic merge failed;

原因是.DS_Store这样的文件在项目提交时需要忽略掉。

忽略步骤:

1、touch .gitignore 创建一个文件


open -e .gitignore 把配置内容粘贴上传,然后保存。(内容是https://www.gitignore.io/gitignore网站里输入 Mac os  objective-c cocoapods xcode即可以获取到)

git add .

git commit

然后要全局使用这个 .gitignore 

$ git config --global core.excludesfile ~/.gitignore

后面跟的是 .gitignore文件位置。你可以更改。但是那个路径下 必须存在那个配置文件。

2、手动或者命令行删除完  .DS_Store之后,执行一下命令:


rm .DS_Store

git add .

git commit -a -m “更改内容”或者git commit -am是前者的简写

git pull origin master

git push origin master

执行完之后 其他同事需要合并我的代码,如果同事有内容提交,执行一下命令:

git add .

git commit -a -m “修改的内容"

git pull origin master

git merge origin/master执行此命令之后出现以下错误:

error: merge is not possible because you have unmerged files.

hint: Fix them up in the work tree, and then use 'git add/rm '

hint: as appropriate to mark resolution and make a commit.

fatal: Exiting because of an unresolved conflict.

出现此错误后重新执行

git add .

git commit -a -m “ssss”

git pull  origin master

git merge origin/master

然后再执行下面

git push origin master

至此GitHub上就不会再有.DS_Store了成功的表现是:本地有.DS_Store和gitignore文件就可以了,GitHub上有.gitignore 没有 .DS_Store文件。



作者:程旭媛
链接:http://www.jianshu.com/p/4f69c79b295f
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值