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 ...
随机推荐
- SQL Server 索引设计指南
https://msdn.microsoft.com/zh-cn/library/jj835095(v=sql.120).aspx#Nonclustered
- cookie与session的爱恨情仇
这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择, 都纪 ...
- bzoj2548[Cstc2002]灭鼠行动
Description 最近,有一些繁殖力很强的老鼠在下水道非常猖獗,灭鼠特工队正在计划消灭这些老鼠.下水道只有东西方向和南北方向的管道,如图所示. 灭鼠特工队的队员拥有强大的武器.他们将在某些时刻t ...
- sublime3 常用插件
1,emmet,html代码自动补全插件 2,jsFormat js格式化插件 3,HTMLBeautify 格式化html插件 4,autoPrefix css3自动补全前缀 5,SublimeCo ...
- ie6-ie8中不支持opacity透明度的解决方法
ie6-ie8中是不支持的,需要加上下面这句话:filter: alpha(opacity=70);此外这种效果不能用ietester中的ie6测试,因为ietester的ie6这样写也是不透明的,但 ...
- Anyconnect的VPN环境部署(2)-在Linux客户机上连接Anyconnect
由于之前已经在机房IDC安装了Anyconnect的VPN服务环境(参考:Anyconnect的VPN环境部署(1)-OpenConnect server(ocserv)服务安装)今天介绍下在linu ...
- Hash链表
<?php /* +------------------------------------------------------------------------------ | dateti ...
- 【转】【MySql】mysql存储过程中的异常处理
定义异常捕获类型及处理方法: DECLARE handler_action HANDLER FOR condition_value [, condition_value] ... statement ...
- Java反射机制可以动态修改实例中final修饰的成员变量吗?
问题:Java反射机制可以动态修改实例中final修饰的成员变量吗? 回答是分两种情况的. 1. 当final修饰的成员变量在定义的时候就初始化了值,那么java反射机制就已经不能动态修改它的值了. ...
- mongodb .net core 调用
MongoClient _client; IMongoDatabase _db; MongoCredential credential = MongoCredential.CreateMongoCRC ...