1.几个概念

(1)工作区指当前编辑代码的地方,是.git仓库所在的文件夹。

(2)暂存区是一个概念,并不存在这个区。

(3)仓库是.git文件夹,是运行git init命令时自动创建的,默认是隐藏的,所有历史都在这。

2.查看状态

$git status可用来查看状态,git会把文件的变化列出来,如未跟踪的文件、已修改的文件、已删除的文件、将被提交的文件列表等,良好的习惯是在操作文件前先查询状态。

3.跟踪文件

$git add 文件名

刚初始化后的仓库是空的,执行上述命令可使文件被git跟踪,此文件就进入暂存区,git不会跟踪空文件夹。

4.忽略文件

忽略文件是指让git不跟踪这些文件。如临时文件、日志文件,可通过composer、node、mave拉取的第三方包等,这些文件没有跟踪的必要。git会递归查找项目中每个目录是否存在“.gitignore”文件,可以在这个文件里声明一些忽略规则,git就会忽略这些文件。

注:.gitignore本身不能被忽略,需要被跟踪。($git add .gitignore)(windows下不能创建.gitignore文件名的文件,可以将文件夹拖进sublime中编辑创建)

忽略规则有:

图1

更多规则可到网上查询。

5.提交

提交之前先配置好user.name和user.email两个配置项。

配置规则:电脑是自己使用就全局配置,否则本地配置。

全局配置:

本地配置(不使用--local默认也是--local):

提交是指把暂存区的文件提交到git仓库,可通过以下命令行执行。同时提交也是名词,在git中一个提交就是一个历史,每个提交都有一个唯一的id:

也可$git commit进入vim编辑器(i进入insert模式,:wq为保存提交)

6.查看提交

即查看提交的日志:$git log,

$git  log –-oneline(单行显示模式更简洁,id也变短了但与原来的长id有相同功能,能进行某些操作)。

7.检出文件

指从提交中拿出一个文件到工作区,如当想放弃某个文件的修改时,可这样做。

若改着README.md不想改了,可从历史中检出这个文件覆盖到当前工作区(从最近的一次提交中检出)。

指定提交id,指定从这次提交中检出(提交id可运行$git  log –-oneline查看):

8.远程仓库

远程仓库提供商很多,最著名的是github。

git的使用(二)的更多相关文章

  1. 小丁带你走进git的世界二-工作区暂存区分支

    小丁带你走进git的世界二-工作区暂存区分支 一.Git基本工作流程 1.初始化一个仓库 git  init git  clone git仓库分为两种情况: 第一种是在现有项目或目录下导入所有文件到 ...

  2. Git系列教程二 基础介绍

    一.存储方式 如果让我们设计一个版本控制系统,最简单的方式就是每做一次更改就生成一个新的文件. 这样的方式太占用空间,所以传统的版本控制系统都是保存一个文件的某个版本的全部内容以及其他版本相对于这个版 ...

  3. Git学习(二)——创建版本库、查看与回退版本

    一.创建版本库 版本库,又名仓库(Repository),可以简单理解为一个目录,这个目录里的所有文件可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者将来某 ...

  4. git入门学习(二):新建分支/上传代码/删除分支

    一.git新建分支,上传代码到新的不同分支  我要实现的效果,即是多个内容的平行分支:这样做的主要目的是方便统一管理属于同一个内容的不同的项目,互不干扰.如图所示: 前提是我的github上已经有we ...

  5. git 使用笔记(二)

    续 2.15 删除文件 $ rm testDel.txt删除掉工作区的testDel.txt文件, 1)这时可以通过git checkout -- testDel.txt从版本库恢复该文件到工作区 2 ...

  6. git 使用(二)

    之前写过一篇git使用(一),那是入门篇,现在的(二)可以说是进阶篇吧,主要讲一些使用过程的注意事件及相关问题的解决办法. 一.push和fetch还需要输入用户名和密码? 解决办法:看看公玥是否添加 ...

  7. 开发团队在TFS中使用Git Repository (二)

    使用Git作分支时,仅仅是对提交历史记录的一个引用,创建分支成本非常低,分支的切换快且简单.在分支管理方面,相对其他的版本管理工具,Git可谓是一骑绝尘. 开发过程中,我们可以针对任何的大小功能进行分 ...

  8. Git知识总览(二) git常用命令概览

    上篇博客我们从 git clone 和 git status 两个命令开始,引出了一系列的git操作命令, 请参见:<Git知识总览(一) 从 git clone 和 git status 谈起 ...

  9. Git从零开始(二)

    前面提交了一个test1.txt文件,接下来看看这个文件接下来的命运. 一.继续修改并提交 在test1.txt中修改后, git status 查看git的状态, 会提示我们文件test1.txt被 ...

  10. Git使用之二:下载远程代码到本地指定文件夹

    一.前期工作: 1.准备好本地的文件夹 2.如果后期需要继续以该文件夹进行同步的,则需要配置该文件夹,方法请参考之前的  Git使用之一:创建仓储和提交文件 二.用clone(克隆方式下载) 在本地下 ...

随机推荐

  1. csharp: DataTable Rename ColumnName and remove Column

    enum ChangeNume { /// <summary> /// 简体 /// </summary> gbk=1, /// <summary> /// 英文 ...

  2. Linux下建立Nexus私服

    Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...

  3. 【背景建模】PBAS

    Pixel-Based Adaptive Segmenter(PBAS)检测算法,是基于像素的无参数模型,该算法结合了SACON和VIBE两个算法的优势,并在这两个算法的基础上改进而来,SACON和V ...

  4. 如何选择RabbitMQ的消息保存方式?

    RabbitMQ对于queue中的message的保存方式有两种方式:disc和ram.如果采用disc,则需要对exchange/queue/delivery mode都要设置成durable模式. ...

  5. android Adapter剖析理解

    UI控件都是跟Adapter(适配器)打交道的 Adapter: 是用来帮助控件填充数据的中间桥梁 (在开发中大多数Textview控件的内容是依靠数据库传递并显示的如:新闻类) Adapter: 将 ...

  6. Vue中class与style绑定

    gitHub地址:https://github.com/lily1010/vue_learn/tree/master/lesson07 一 用对象的方法绑定class 很简单,举个栗子: <!D ...

  7. 自己写方法处理WP(RT)后退键事件处理

    不用微软的NavigationHelper,自己写方法处理WP后退键事件 在WP8.1(RT)程序中,你会发现按下后退键时,应用会直接退出,变为后台运行,这是因为RT与Silverlight对后退键的 ...

  8. 高级iOS面试题

    非标准答案 2 1: 类方法是可以直接通过类名直接调用,无需进行实例化对象.类方法是以+开头2. 实例方法,需要显示实例化对象,为对象分配堆栈空间,并通过对象实例调用实例方法3. RUNTIME 是在 ...

  9. iTerm和Alfred 2的安装和使用

    小贴士:本博文所有的下载资源都在文章末尾 当你下载好所有需要的资源之后,就可以安装这两个装逼神器了: iTerm的安装和使用 首先是安装终端相关的装逼神器 先把archey拷贝到bin目录下,补充图示 ...

  10. 学习C语言的数组

    C语言的数组 数组声明的实例:int num[3];只要记下这个模板就好. 不建议使用变量定义数组,如果使用了变量定义数组,作为数组的元素的个数,不初始化的情况下是随机值,如果初始化会直接报错 注意: ...