一、Git提供了文件忽略功能。当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪

HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件

  问题:最近在github做一个项目,每次成生成的log日志文件和本地IDE的.idea/workspace.xml,每次提交说没有跟踪文件,更郁闷的的我的项目有在本地虚拟机,有时候会出现没有权限跟踪文件。

今天特意解决下问题:

这里有详细的学习:https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%AE%B0%E5%BD%95%E6%AF%8F%E6%AC%A1%E6%9B%B4%E6%96%B0%E5%88%B0%E4%BB%93%E5%BA%93

(1) 检查当前文件状态 要查看哪些文件处于什么状态,可以用 git status 命令,可以看出intellij idea 的文件.idea/workspace.xml 也提示没有被跟踪的信息

  

(2)如果已经不幸之前commit workspace.xml 的话,必须执行以下命令:git rm --cached .idea/workspace.xml

  

(3)现在我们通过git .gitignore文件,建立.gitignore文件,在项目根目录下创建一个名为.gitignore的文件(注意文件的前面有个点),用于记录忽略规则

  注:windows下不可以按常规方法新建.gitignore文件,需要在命令行中进行创建:echo >.gitignore,另外git base下的命令如下:touch .gitignore

(4)编写忽略规则(由于IDE比较麻烦,我就直接使用git 客户端进行编辑了),添加的规则如下所示,针对.log为文件和.xml文件进行了忽略规则

  

  更多规则可以连接这里:http://blog.csdn.net/yonnangel/article/details/50115059

(5)再次查看状态,已经不在跟踪的局域了,这说明你现在的工作目录相当干净。换句话说,所有已跟踪文件在上次提交后都未被更改过。

  

(6)总结:这样子就可以避免每次切换不同的分支而导致的都要跟踪一次日志文件和IDE的.idea/workspace.xml 文件(我都是git stash 的)

二、删除远程或者本地的一个文件

  问题:还是上面的原因,因为我以前已经把日志文件提交到了github之上,现在要删除这个文件,以后不要在提交这些无用的文件了

(1)查看远程文件是结果如何删除这个远程文件来

(2)使用 Git rm 命令即可,有两种选择:

  【1】一种是 git rm --cached "文件路径",不删除物理文件,仅将该文件从缓存中删除;

  【2】一种是 git rm --f "文件路径",不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶)

(3)在这里我们使用第一种,

  先执行命令:git rm --cached .idea/workspace.xml 删除缓存文件

  再查看当前工作区装填。操作后的结果如图所示

  

(4)最后直接,提交更新,同时push推送到github远端仓库

  

(5)再次查看git项目log文件,已经被删除掉了

  

错误问题,切换分支

error: Your local changes to the following files would be overwritten by checkout:
.idea/workspace.xml

Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件的更多相关文章

  1. git and github学习笔记

    1.git的状态分为working status,stage status和commit status.git diff查看的是working status和 stage status之间的不同,gi ...

  2. eclipse使用git及github学习笔记

    项目托管 1.首先需要在github上建立一个远端仓库  点击Create repository后,会在github上建立相应的git仓库,并会出现如下界面: 复制https或者ssh的仓库地址,远端 ...

  3. Git与GitHub 学习笔记

    以下信息来源于网络资料,并进行整理与精简 Git是目前世界上最先进的分布式版本控制系统,和svn,vss等一样都是进行版本控制的. GitHub是一个软件项目的托管平台,相当于自己建立的 svn服务器 ...

  4. Git与GitHub学习笔记(二)提交的一些笔记

    1.合并分支的使用一定要切换到master分支上去合并:git merge company2.切换分支的时候一定要提交干净本地分支的代码,才可以切换分支,否则提示错误信息: 3.这时候我们做的就是提交 ...

  5. Git与GitHub学习笔记(一)如何删除github里面的文件夹?

    按照以下步骤即可(本地删除) 1. git pull you git url2. git checkout 3. rm -r dirName4. git add --all5. git commit  ...

  6. Git与GitHub学习笔记(七)Windows 配置Github ssh key

    前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...

  7. Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上

    前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...

  8. Git与GitHub学习笔记(六)使用 Github Pages 管理项目文档

    前言 你可能比较熟悉如何用 Github Pages 来分享你的工作,又或许你看过一堂教你建立你的第一个 Github Pages 网站的教程.近期 Github Pages 的改进使得从不同的数据源 ...

  9. Git与GitHub学习笔记(五)一次提交失败的记录

    代码已经跟踪了,添加注释说明,但是总是添加不了 error: pathspec 'live-page'' did not match any file(s) known to git. 重复了好多遍, ...

随机推荐

  1. java Servlet Filter 拦截Ajax请求

    /** * 版权:Copyright 2016-2016 AudaqueTech. Co. Ltd. All Rights Reserved. * 描述: * 创建人:赵巍 * 创建时间:2016年1 ...

  2. 谈对象 MVC 和 多端

    什么是对象? 我是单身狗,我没有对象:我是C程序猿,我没有对象:我是程序猿,我只会new一个对象. 言归正传,想想从一个电商网站上买一个东西,“进入首页,搜索商品,选型购买,登录下单,支付完成”,这里 ...

  3. PS转手绘

    2014-08-03  一.人物皮肤处理 复制两层图层,对背景图层隐藏,最后一层 高斯模糊 ,按住ALT创建图层蒙版, 使用画笔工具涂抹人物皮肤,眼睛不涂,把阴影和高光处抹均匀,最后应用图层蒙版,向下 ...

  4. js执行上下文(由浅入深)

    每一个函数都有自己的执行上下文EC(执行环境 execution context),并且每个执行上下文中都有它自己的变量对象VO(Variable object),用于存储执行上下文中的变量 .函数声 ...

  5. RX编程笔记——JavaScript 获取地理位置

    RX编程笔记——JavaScript 获取地理位置 2016-07-05

  6. java动态代理(JDK和cglib实现对比)

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt214 JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特 ...

  7. Record && Limit

    案例一:Record 预期效果:在 IVR 与用户交互的时候,比如让用户读一段语音,当用户读完之后,按键结束录音. <action application="set" dat ...

  8. 【进阶3-2期】JavaScript深入之重新认识箭头函数的this(转)

    这是我在公众号(高级前端进阶)看到的文章,现在做笔记 https://github.com/yygmind/blog/issues/21 上篇文章详细的分析了各种this的情况,看过之后对this的概 ...

  9. centos6安装python3

    1.安装环境 #yum install gcc zlib-devel make 2.下载python版本 #wget http://www.python.org/ftp/python/3.*.0/Py ...

  10. Python import搜索的路径顺序

    在程序中导入时,如下顺序 1.Python 标准库模块2.Python 第三方模块3.应用程序自定义模块   import的搜索顺序: 首先判断这个module是不是built-in即内建模块,如果是 ...