git合并代码之.gitignore

在git合并代码的过程中,反复遇到一个问题:不同机器上传的代码,在git pull时候报错如下

error: Your local changes to the following files would be overwritten by merge:
.DS_Store

Please, commit your changes or stash them before you can merge.

原因

  • 合并时,将系统目录隐藏文件进行了比对,不同机器的当然一直存在冲突

解决办法

  • 在显示Finder隐藏文件模式下,进入/User目录下,查看.gitignore_global

      # .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
    
  • 务必保证.DS_Store在忽略名单内!!!!!!

  • 然后,进到你的项目目录,查看.git文件夹下,config配置,添加这一行,当然,目录请指向你的.gitignore_global

  • 这部分的意思是,保证你的项目,引用了全局的gitignore,即忽略了那些应该忽略的东西

      excludesfile = /Users/apple/.gitignore_global 
    

成功在即

好了,现在删除下你本地的.DS_Store,然后再pull一次吧,大功告成~

2016-4-21更新

哎,又出新的坑了,手动删除.DS_Store,还是不管用!。。。google结果如下,执行后,再pull就没事了

http://stackoverflow.com/questions/14744993/git-strange-branch-merge-error-that-i-am-not-sure-how-to-solve

rm .DS_Store
git add -A
git commit -m "Added .gitignore file"

感谢stackoverflow 感谢warrenm

如果你的.DS_Store未忽略就已经push上传,那么它已经被git跟踪,需要执行终端清理git缓存,

    git rm -r --cached [文件名]

    git rm -r --cached .DS_Store

重置所有跟踪

    git rm -r --cached .
    git add .
    git commit -m 'update .gitignore'

生成ignore文件工具

发现一个工具,可以生成各种语言环境下ignore文件
https://www.gitignore.io/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文为 Git教程的学习笔记,教程源自廖雪峰的博客。这是一个由浅入深,学完后能立刻上手的Git教程。另,附上另一本...
    七弦桐语阅读 6,275评论 5 47
  • 本文按照 设置工程、分支与合并、本地操作、分享和更新 四步来简单说一下 Git 基本命令的用法。 Git 命令参考...
    michael_jia阅读 1,299评论 0 3
  • 我发现,当你在做一件让你感觉很难受或者很难完成的事情时,去做一件更难的事,然后回头再做一次前者,就会容易接受很多。
    inico阅读 137评论 0 0
  • 这大概是北平深秋里最美的一个周末了,带了相机却忘记带存储卡,只能拿手机拍摄美丽的秋衣裳~~ 享受四季的流转,品味人...
    在人间的稳稳阅读 396评论 0 2
  • 街道是死的 它拐不过来弯 他从它身体里走去 像一个故事有了始终 于是,它凹起了自己的躯体 如同—— 爱自己的后背
    兔子的蹩脚阅读 141评论 0 0