git初体验(二)基础git文件操作
文件操作续
忽略一些文件
只需在主目录下建立".gitignore"文件,注意新建的是文件而非文件夹,在win窗口中不能建立以.开头的文件,只能在dos下:
E:\knowcars\knowcar>copy con .gitignore
^Z
已复制 1 个文件。
但纠结的是明明没有给它后缀名,却每次建立的都是文本文档,不知道git的文件是怎么建立的,求解?
关于git如何忽略的规则,见Git 忽略一些文件不加入版本控制
移除文件
如果我新建一个a.txt的文件还没有加入暂存区,此时我删除a.txt,在git status后,不会显示该操作信息,这样就挺好的。
但是如何我已经加入暂存区了,然后再git status 则会显示如下:

那么怎么移除一个文件让GIT不再将其纳入版本控制呢?解决办法就是:
git rm <file>...
移除所有未跟踪文件:
git clean [options] 一般会加上参数-df,-d表示包含目录,-f表示强制清除。
如下图:

移动文件
移动文件也同上,不能直接移动或重命名,如:

如果要重命名文件可以使用:
git mv old_name new_name
这个命令等效于:
mv old_name new_name(DOS下:ren old_name new_name)
git rm old_name
git add new_name
交互式暂存
交互:interaction,使用
git add -i
可以开启交互式暂存,如图所示,系统会列出一个功能菜单让选择将要执行的操作。

在win下如下图所示,太丑了:

储藏-Stashing
也就是:存储分支--切换分支--应用分支
场景:
可能会遇到这样的情况,你正在一个分支上进行一个特性的开发,或者一个Bug的修正,但是这时突然有其他的事情急需处理,这时该怎么办?不可能就在这个工作进行到一半的分支上一起处理,先把修改的Copy出去?太麻烦了。这种情况下就要用到Stashing了。
这里见储藏-Stashing有详解。
在Git Community Book 中文版之储蓄也有详细的说明。
git stash #git stash 来保存当前的工作状态
git stash apply #重新回来原来的工作时,只需把Stash区域的内容取出来应用到当前工作目录就行
git stash apply stash@{1} #应用某一个队列
git stash list #查看所有stash列表
git stash show #显示stash的内容具体是什么,同git stash apply一样,可以选择指定stash的名字。
git stash apply之后再git stash list会发现,apply后的stash还在stash列表中,如果要将其从stash列表中删除可以用:
git stash drop
#丢弃这个stash,stash的命令参数都可选择指定stash名字,否则就是最新的stash。
git stash pop #是应用与删除的快捷,一个命令即可
git stash apply --index #维持原来的样子,原来暂存的文件仍然是暂存状态,可以加上--index参数,否则都将变成未暂存状态
更多的还是参考上面的链接吧!
git初体验(二)基础git文件操作的更多相关文章
- git初体验(三)git分支
分支的理念就是分身,就像孙悟空拔出猴毛变出很多跟自己一模一样的猴子,然后每个猴子做自己的事情互不干涉,等到所有猴子做完之后,猴子集合来合并劳动成果,然后悟空就把那些猴子猴孙门统统收回了. 你创建了一个 ...
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
- 第十二章 Python文件操作【转】
12.1 open() open()函数作用是打开文件,返回一个文件对象. 用法格式:open(name[, mode[, buffering[,encoding]]]) -> file obj ...
- git初体验(一)基础
一.window下的git安装 1.安装教程 网上教程一堆,我参考的是这个:Git_Windows 系统下Git安装图解 还有这个也不错 2.环境搭建: 在配置完成后,自动加载到系统环境变量中,如我的 ...
- Git 学习(二)Git 基础
Git 基础 Git 在保存和对待各种信息的时候与其它版本控制系统如 SVN 等等有很大差异,尽管操作起来的命令形式非常相近,理解这些差异将有助于防止你使用中的困惑. Git 记录的是什么? 如果有使 ...
- Git:Git初体验——Git安装配置
作为即将成为一个程序员的男人,一直在听别人说Git多好多好,之前也随便了解了一些,但是始终没有决心去学会.现在大四了,只有毕设和一门开学六七周只去过一次课的全员必修课外,也没有什么事情做,何不去做这些 ...
- git使用记录二: 给文件重命名的简单方法
git使用记录三: 给文件重命名的简单方法 git mv file_name_old file_name_new mv: 文件命名 file_name_old : 文件当前的名字 file_name_ ...
- git初体验(七)多账户的使用
多github帐号的SSH key切换 我有两个github帐号,一个是个人所用,一个是为公司项目所用.如果是单用户(single-user),很方便,默认拿id_rsa与你的github服务器的公钥 ...
- git初体验(五)SSH的理解
一.SSH SSH是Secure shell的缩写,即"安全外壳协议",专为远程登录会话和其他网络服务提供安全性的协议,是一项计算机上的安全协议. 传统的网络服务程序,如rsh.F ...
随机推荐
- 烈焰SWF解密
SWF 解密 是用UE编辑器 改 SWF开头 的AA AA AA ,改成43 57 53 就解密了
- MYSQL数据库的操作
Mysql的连接方式: 1.原生函数:mysql_connect($server,$username,$password); //打开一个到Mysql服务器的连接 mysql_select_db( ...
- bzoj1787 [Ahoi2008]Meet 紧急集合
1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec Memory Limit: 162 MB Submit: 2272 Solved: 1029 [Submi ...
- IOS第五课——Gesture and TableView
这一次我们要学习Gesture.TableView.AlertView三种技术. 一.Gesture 在iOS中,可以使用系统内置的手势识别(GestureRecognizer),也可以创建自己的手势 ...
- js原生碰撞检测
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 程序员级别鉴定书(.NET面试问答集锦)
作为一个.NET程序员,应该知道的不仅仅是拖拽一个控件到设计时窗口中.就像一个赛车手,一定要了解他的爱车 – 能做什么不能做什么. 本文参考Scott Hanselman给出的.NET问题列表,整理如 ...
- 一步一步学swift之:自己写Api接口-PHP
想要自己一个人完成app,那么后台接口也必须自己动动手.不用担心,其实很简单的,给自己信心!下面就以登录注册为例,做一个api接口 首先在mac上搭建PHP环境,下载 MAMP Pro for Mac ...
- 在C#中将String转换成Enum:
一: 在C#中将String转换成Enum: object Enum.Parse(System.Type enumType, string value, bool ignoreCase); 所以,我 ...
- 035医疗项目-模块三:药品供应商目录模块——供货商药品目录(批量)添加药品的功能---------Service
这篇文章我们重点介绍Service层.因为Dao层就是用Gysypml逆向生成的Mapper就可以了.所以这里重点讲解Service层. 业务逻辑如下: 1:我们从前端页面传入有两个值:1:userg ...
- 金旭亮老师的Scoekt编程摘要
Socket提供了众多的属性,还提供了SetSocketOption方法来设置各种选项,对.NET网络应用程序的数据通讯进行“微调”. Socket的功能出奇地强大,在.NET平台上,它支持以下 ...