Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件
一、Git提供了文件忽略功能。当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪
HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件
问题:最近在github做一个项目,每次成生成的log日志文件和本地IDE的.idea/workspace.xml,每次提交说没有跟踪文件,更郁闷的的我的项目有在本地虚拟机,有时候会出现没有权限跟踪文件。
今天特意解决下问题:
(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文件忽略和删除本地以及远程文件的更多相关文章
- git and github学习笔记
1.git的状态分为working status,stage status和commit status.git diff查看的是working status和 stage status之间的不同,gi ...
- eclipse使用git及github学习笔记
项目托管 1.首先需要在github上建立一个远端仓库 点击Create repository后,会在github上建立相应的git仓库,并会出现如下界面: 复制https或者ssh的仓库地址,远端 ...
- Git与GitHub 学习笔记
以下信息来源于网络资料,并进行整理与精简 Git是目前世界上最先进的分布式版本控制系统,和svn,vss等一样都是进行版本控制的. GitHub是一个软件项目的托管平台,相当于自己建立的 svn服务器 ...
- git和github学习笔记
1. 了解Git和Github 2. 使用Github 3. Git安装和使用 4. Git基本工作流程 5. Git初始化及仓库创建和操作 6. Git管理远程仓库 7. Github Pages ...
- Git与GitHub学习笔记(二)提交的一些笔记
1.合并分支的使用一定要切换到master分支上去合并:git merge company2.切换分支的时候一定要提交干净本地分支的代码,才可以切换分支,否则提示错误信息: 3.这时候我们做的就是提交 ...
- Git与GitHub学习笔记(一)如何删除github里面的文件夹?
按照以下步骤即可(本地删除) 1. git pull you git url2. git checkout 3. rm -r dirName4. git add --all5. git commit ...
- Git与GitHub学习笔记(七)Windows 配置Github ssh key
前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...
- Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上
前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...
- Git与GitHub学习笔记(六)使用 Github Pages 管理项目文档
前言 你可能比较熟悉如何用 Github Pages 来分享你的工作,又或许你看过一堂教你建立你的第一个 Github Pages 网站的教程.近期 Github Pages 的改进使得从不同的数据源 ...
随机推荐
- Spring+SpringMVC+MyBatis整合基础篇(三)搭建步骤
作者:13GitHub:https://github.com/ZHENFENG13版权声明:本文为原创文章,未经允许不得转载. 框架介绍 Spring SpringMVC MyBatis easyUI ...
- LintCode——交叉字符串
描述:给出三个字符串:s1.s2.s3,判断s3是否由s1和s2交叉构成. 样例:s1 = "aabcc" s2 = "dbbca" - 当 s3 = &quo ...
- 机器学习英雄访谈录之 Kaggle Kernels 专家:Aakash Nain
目录 机器学习英雄访谈录之 Kaggle Kernels 专家:Aakash Nain 正文 对我的启发 机器学习英雄访谈录之 Kaggle Kernels 专家:Aakash Nain Sanyam ...
- 腾讯 深圳 25928-PHP开发工程师(深圳)
工作地点:深圳 职位类别:技术类 招聘人数:1人 工作职责: 负责游戏研运体系流程工具及相关产品的开发.维护: 参与支撑系统的需求分析.设计.编码: 承担外包开发成员技术导师,解决技术难点,把控开发质 ...
- abcdocker 的博客
技术参考总结 abcdocker 的博客 09月 3 篇 20日 Centos7 图形化创建KVM 10日 Nginx 代理Google 进行*** 10日 mac 安装装逼神器cmatrix 08月 ...
- Scrum Meeting NO.5
Scrum Meeting No.5 1.会议内容 暂时料理完了编译,可以写软工了.说多了都是泪T_T 2.任务清单 徐越 序号 近期的任务 进行中 已完成 1 修改url名.参数 √ 2 学习Jso ...
- java实验报告二
一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 二.实验步骤 (一)单元 ...
- 《Gogoing》Alpha版使用说明
前言: Gogoing是由我们山药蛋团队利用课余时间,基于安卓安卓系统开发完成.该软件针对于我们大学生没有赚钱能力,却又渴望外面的世界,该软件的核心理念的是“穷”游.为当代的大学生提供一个景点推荐或者 ...
- git hub 使用心得
git中重要的概念: 工作目录(working directory):在工作目录中修改文件,修改后的文件状态是modified,新添加的文件是untracked,通过git add命令将文件保存到st ...
- Alpha冲刺——事后诸葛亮
组长博客 作业博客 项目Postmortem 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件针对的是福大学子来到食堂会犹豫不决无法决定吃什么 ...