layout: post

title: 2018-02-02-解决IDE中无法忽略的非代码文件

key: 20180202

tags: GIT 版本管理

modify_date: 2018-02-02

---

解决IDE中无法忽略的非代码文件

说明:

正文:

  • 问题:
  • 有时候发现IDE(比如pycharm)中非代码文件(比如PYCHARM自己的“.idea”目录下的文件),因为IDE而总是变化,而总是要求被commit;
  • 你无法对这些文件应用ignore来忽略,从而不让他提交到远端GIT;
  • 分析:
  • GIT的本地忽略设置(.gitignore)必须保证git的远程仓库分支上没有要忽略的这个文件,如果远程分支上存在这个文件,则本地忽略无效,即便在ignore里设置了也没用;
  • 有人说这是git的bug,但也许GIT本来也是这样设计,或故意如此的;
  • 解决:
    1. 确保本地正确安装了可用的GIT环境,尤其是可在在WIN10目录下运行“GIT BASH HERE...”(linux类似,可能更方便清晰些);
    1. 在OS层,不要在IDE内。先拷贝备份目录“.idea”;(其他文件是类似的,这里以pycharm的IDE文件所在目录“.idea”来举例)
    1. 在源码目录进入“GIT Bash Here...”, 删除“.idea”,并提交改动到远端GIT仓库;

      cd .idea //进入目录 rm -rf * //递归删除文件及子目录 cd .. //退到上级目录 rmdir .idea //删除.idea文件夹 git status //查看git状态,此时git会俘获到删除了若干文件的情况,并列出 git add . //将改动提交到stage git commit -m '我们在IDE外删除了非源码的IDE自有文件并通过gitbash提交到远端'
    1. 找到源码根目录下面的文件".gitignore"(没有请新建),添加一行“.idea”表示忽略此目录下所有文件;
    • 4.a. 这句刚才不起效,现在远端GIT仓库删除后,对本地再次用忽略策略,会起效;
    1. 将本地保存的.idea文件夹,拷贝回到源码目录,因为IDE(pycharm)需要,然后从IDE打开项目,再次选择IDE的某菜单来commit提交,会发现不再列出这些忽略的IDE文件了;
    1. 世界再次清净下来!

2018-02-02-解决IDE中无法忽略的非代码文件的更多相关文章

  1. 解决VSCode中使用vetur插件格式化vue文件时,js代码会自动加上冒号和分号

    解决VSCode中使用vetur插件格式化vue文件时,js代码会自动加上冒号和分号 在设置中把"vetur.format.defaultFormatter.js": " ...

  2. 2018.7.15 解决css中input输入框点击时去掉外边框方法

    .input_css{ background:no-repeat 0 0 scroll #EEEEEE; border:none; outline:medium; }

  3. 解决 IDEA 中src下xml等资源文件无法读取的问题

    该问题的实质是,idea对classpath的规定. 在eclipse中,把资源文件放在src文件夹下,是可以找到的: 但是在idea中,直接把资源文件放在src文件夹下,如果不进行设置,是不能被找到 ...

  4. C#:解决WCF中服务引用 自动生成代码不全的问题。

    问题描述: 如下图:打叉的部分是引用不成功的部分 ,在web.config文件中没有自动添加其引用代码. 英文解释 在服务引用选择自己的项目的程序集就行了,如下图: 特别注意:这些程序集一定要在自己的 ...

  5. 解决WordPress中无法将上传的文件移动至wp-content/uploads

    搭建lnmp环境,放一个wordpress建站系统 lnmp环境很快就搭建完成了,但是在放wordpress的时候出现了一些问题 最主要的问题: 1.第一个是wp-content/uploads没有权 ...

  6. MvcHtmlString解决MVC中从后台返回HTML代码被编码问题

    (1) 要得到的效果 <a class="easyui-linkbutton" data-options="iconCls:'icon-add'" id= ...

  7. 解决java中按照数字大小来排序文件

    我们想要输出(1.jpg.2.jpg.3.jpg.10.jpg.11.jpg.20.jpg.21.jpg.31.jpg) 突然看到网上一些写法 总结:既然自己按照定义的文件名规则来处理,也可以进行使用 ...

  8. 在Asp.Net Core中使用中间件保护非公开文件

    在企业开发中,我们经常会遇到由用户上传文件的场景,比如某OA系统中,由用户填写某表单并上传身份证,由身份管理员审查,超级管理员可以查看. 就这样一个场景,用户上传的文件只能有三种人看得见(能够访问) ...

  9. idea中安装git后,代码颜色代表的含义

    idea中安装git以后,代码文件出现了不同的颜色 它们分别表示的含义: 绿色,已经加入控制暂未提交 红色,未加入版本控制 蓝色,加入,已提交,有改动 白色,加入,已提交,无改动 灰色:版本控制已忽略 ...

随机推荐

  1. js--Dom Bom操作

    –      基础 –     内置对象 ● String对象:处理所有的字符串操作 ● Math对象:处理所有的数学运算 ● Date对象:处理日期和时间的存储.转化和表达 ● Array对象:提供 ...

  2. Java泛型集合

    所谓泛型就是允许在定义类.接口时指定类型形参,这个类型形参将在声明变量.创建对象时确定.增加了泛型支持后的集合,完全可以记住集合 中元素的类型,并可以在编译时检查集合中元素的类型.即解决一些安全问题, ...

  3. 常用OJ名字+地址(自用)

    常用OJ名字+地址 不定期更新,自己用,有补充的也可以给我说说哈. 中文 openjudge 地址:openjudge.cn 说明:北大提供的一个平台,学校可申请小组: 比较好的小组: 计算概论:ic ...

  4. Timus Online Judge:ural:1006. Square Frames

    原题链接:http://acm.timus.ru/problem.aspx?space=1&num=1006 看到题第一反应:这玩意怎么读入…… 本地的话因为是全角字符,会占两个位置,所以需要 ...

  5. Codeforces 626C

                                                                                                        ...

  6. ubantu下su命令Authentication failure失败的解决方式

    Ubuntu安装后,root用户默认是被锁定了的,不允许登录,也不允许 su 到 root . 可以使用: sudo passwd 来重新设置root密码,后即可登陆root. ortonwu@ubu ...

  7. Myeclipse2014 已有项目更换JDK

    原先项目使用JDK是1.7,今天项目加入了一个新包,只支持JAVA8,让我们都升级一下本地的JDK,我突然发现我还没有在myeclipse上升级过JDK呢.捣鼓了一下,也不难,记录一下. 1.下载ja ...

  8. JEECG 3.7.1 版本发布,企业级JAVA快速开发平台

    JEECG 3.7.1 版本发布,企业级JAVA快速开发平台 ---------------------------------------- Version:  Jeecg_3.7.1项 目:   ...

  9. [国嵌攻略][142][LCD驱动程序架构]

    LCD裸机驱动回顾 1.LCD初始化 1.1.控制器初始化 1.2.端口初始化 1.3.指明了帧缓冲 2.LCD图形显示 2.1.将图形数据写入帧缓冲 Linux帧缓冲体验 把图片转换成开发板屏对应的 ...

  10. 浅析const、let与var

    以前无论声明变量还是常量,总是使用var一勺端,知道接触了es6之后,发现原来变量.常量的声明其实是很讲究的. 这里简单来谈谈var.const与let. 1.var.var声明的变量没有块级作用域, ...