一、创建仓库

  创建一个目录

  mkdir repository

  cd到该目录下,初始化该版本库

  git init

  至此,版本库创建成功,可以在该文件夹下看到.git文件夹,ls -ah可以看到该文件夹。

二、版本管理

  1.将文件或文件夹添加到版本库中进行版本控制

  在工作区创建一个文件

touch readme.txt

  将该文件添加到暂存区

git add readme.txt

  将文件从暂存区提交到版本库

git commit -m "some comment"

  *工作区、暂存区、版本库

  工作区,就是你本机版本库所在文件夹,你似乎认为这就该是版本库,但实际上版本库中具体有什么是保存在.git文件夹下的,也就是说版本库所在文件夹下的内容,必须是在.git中注册了,才是版本库中的内容。否则只是工作区或暂存区的内容。

  我们来看下版本库中有什么

  重要的目录包含结构如下

工作区:你当前进行版本控制到目录。
|——版本库:“工作区”中有一个.git文件夹,就是git版本库。
|——暂存区:在“版本库”中有一个stage或者叫index的文件夹
|——HEAD指向master的指针
|——refs
|——heads
|——master

  如上所示,.git文件夹可以就认为是版本库;index文件夹是“暂存区”;HEAD文件是当前用户指向分支的指针;refs/heads/master存放主版本分支内容

    对HEAD的理解:每个用户有一个HEAD,指向当前分支的commit节点。

  2.查看工作区和暂存区、版本库所做的改动

  git status

   

   3.查看具体有什么变化

  git diff

  

  4.查看版本库所有历史提交信息

  git log

  这样能够看到每次提交的具体信息及id

  简化输出

  git reflog

  加参数--pretty=oneline

git log --pretty=oneline

  5.回退、前进到某个版本

git reset --hard 版本号 

  前进:HEAD,向前走一个版本

     HEAD^,向前走两个版本

     HEAD~n,向前走n个版本

三、撤销操作

0.添加新文件到暂存区,如果想将其撤销下来

    git add filename
    此时使用git rm --cached readme.txt将文件从暂存区撤出
1.撤销工作区中的修改
    首先保证把该文件添加到了git版本控制中,否则无法撤销工作区中的修改,撤销无非是把文件恢复到暂存区中的内容,或把文件恢复到版本库中的内容
    git checkout -- readme.txt
2.撤销提交到暂存区中的修改
    git reset HEAD filename
3.撤销commit的修改
    已经提交到了本地版本库中,此时还没有提交到远程版本库中
    调用“回退到某个版本”中的方法git reset --hard e70c5e98222a2

四、删除版本库中文件

删除版本库中的文件
    git rm filename
git commit filename
误删除版本库中的文件
    git reset --hard commitid 
误删除本地文件
    git checkout -- filename

git学习——<三>git操作的更多相关文章

  1. git学习(三) git的分支操作

    git的分支操作 软件项目中启动一套单独的开发线的方法,可以很好的避免版本兼容开发的问题,避免不同版本之间的相互影响,封装一个开发阶段,解决bug的时候新建分支,用于对该bug的研究: git中跟分支 ...

  2. git学习——<五>git分支

    git学习——<一>git安装 git学习——<二>git配置文件 git学习——<三>git操作 git学习——<四>git版本管理 一.提出问题 今 ...

  3. Git 笔记三 Git的初步使用

    Git 笔记三 Git的初步使用 在上一篇中,学习了如何配置Git环境,这一篇,开始学习Git的初步使用.Git的初步使用还是很简单的.总体上知道git init, git clone, git ad ...

  4. git 学习(1) ----- git 本地仓库操作

    最近在项目中使用git了,在实战中才知道,以前学习的git 知识只是皮毛,需要重新系统的学一下,读了一本叫  Learn Git in a Month of Lunches 的书籍,这本书通俗易懂,使 ...

  5. Git 学习之git 分支(三)

    Git 分支 几乎每一种版本控制系统都以某种形式支持分支.使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的 ...

  6. git 学习记录—— git 中的仓库、文件状态、修改和提交操作等

    最近开始学习使用版本控制工具  git .学习方式主要通过阅读 git 网站上的 Pro git 和动手实践,使用的系统为 Ubuntu16.04LTS,以及 Windows 8.1. 本文主要关注 ...

  7. git学习 本地常用操作01

    注意: Microsoft的Word格式是二进制格式,因此,版本控制系统是没法跟踪Word文件的改动 不要使用Windows自带的记事本编辑任何文本文件 开始git项目: 初始化本地项目: 初始化:g ...

  8. git学习(五) git diff操作

    git diff操作 git diff用于比较差异: git diff 不加任何参数 用于比较当前工作区跟暂存区的差异 git diff --cached 或者--staged 对比暂存区(git a ...

  9. Git学习记录--git仓库

    Git是一款强大的版本控制工具,与svn相比git的分布式提交,本地仓库等在使用时确实比较方便.当然两者之间各有优劣,我在这里不多做比较.由于之前少有接触git,只是零星大致地了解一点,所以找时间系统 ...

随机推荐

  1. FreeRTOSConfig 配置文件详解

    以下转载自安富莱电子: http://forum.armfly.com/forum.php 本章节为大家讲解 FreeRTOS 的配置文件 FreeRTOSConfig.h 中每个选项的作用.初学的话 ...

  2. 一款基于的jQuery仿苹果样式焦点图插件

    这次我们要分享的这款jQuery焦点图非常特别,它的外观特别简单,但是又相当大气.焦点图的整体样式是仿苹果样式的,由于jQuery的运用,我们只要点击图片下方的缩略图即可达到图片切换的焦点图特效,这款 ...

  3. linphone 在am335x的编译过程

    环境变量: export PREFIX=/usr export HOSTTPL=arm-linux-gnueabihf export INSTALLDIR=/home/elinux/linphone/ ...

  4. crc32 冗余加密校验

    在数据存储和传输中使用 在ts中要对pat  和pmt 中的数据进行冗余校验 http://blog.chinaunix.net/uid-20321537-id-1966721.html

  5. 【cf492】D. Vanya and Computer Game(二分)

    http://codeforces.com/contest/492/problem/D 有时候感觉人sb还是sb,为什么题目都看不清楚? x per second, y per second... 于 ...

  6. 【BZOJ】1679: [Usaco2005 Jan]Moo Volume 牛的呼声(数学)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1679 水题没啥好说的..自己用笔画画就懂了 将点排序,然后每一次的点到后边点的声音距离和==(n-i ...

  7. ThinkPHP项目笔记之登录,注册,安全退出篇

    1.先说注册 a.准备好注册页面,register.html,当然一般有,姓名,邮箱,地址等常用的. b."不要相信用户提交的一切数据",安全,安全是第一位的.所以要做判断,客户端 ...

  8. 我学cocos2d-x (一) 游戏基本概念:坐标系与Anchor Point

    坐标系: 游戏开发中.全部物体都有自己的位置,而我们须要一个參考系来描写叙述物体的位置.使用cocos2d-x开发的时候.有几个比較重要坐标系须要掌握:屏幕坐标系和Cocos2d坐标系 屏幕坐标系: ...

  9. 系统管理模块_岗位管理_实现CRUD功能的具体步骤并设计Role实体

    系统管理模块_岗位管理_实现CRUD功能的具体步骤并设计Role实体 1,设计实体/表 设计实体 --> JavaBean --> hbm.xml --> 建表 设计Role实体 p ...

  10. Axure 8 注册码,市面上很多注册码都不行用,但是这个可以。

    找了很久了,感谢@Quan-Sunny的转载 Licensee: University of Science and Technology of China (CLASSROOM) Key: DTXR ...