GIT学习笔记(1):创建版本库
GIT学习笔记(1):创建版本库
创建版本库
1.创建合适目录并初始化为仓库
版本库即需要交由Git进行版本控制的目录,其下所有文件的修改、删除,Git都能跟踪还原。

说明:初始化后,当前目录下会多出来一个名为.git的隐藏目录,这个目录是Git用来跟踪管理版本库的,我们切勿修改。
关于GIT版本库
前面说了,GIT会在初始化为仓库的目录下创建一个.git的隐藏目录,它是GIT的版本库。GIT的版本库里存放了很多东西,其中最重要的就是称之为stage或index的暂存区,另一个是GIT为我们创建的第一个分支master,以及指向master的一个指针head。

暂存区怎么理解呢?好比我们去超时买菜,不可能每拿一个菜就去柜台结账,我们需要一个菜篮子,把需要的菜都先暂时保存起来,等到要走的时候最后拿去付钱,暂存区就相当于菜篮子,是Git用来保存一些临时文件的地方。
2.将文件添加并提交到版本库
所有的版本控制系统,只能跟踪文本文件的改动,比如TXT文件、网页文件、程序代码等,GIT可以告诉你每次的改动,比如某行增加了一个内容。二进制文件的无法追踪具体的修改细节的,只能知道发生了修改操作。
编写一个Java类,输出Hello World

编译Test.java,并将Test.java,Test.class添加到版本库中。

说明:
git add:告诉Git,把文件添加到暂存区。
git commit -m "提交说明":告诉Git,把暂存区的所有内容提交到当前分支。
3、修改文件并查看Git是否进行跟踪
我将Test.java文件中的输出改为Hello World!Good Night!让我们看一下Git是否记录了我们的操作!

很神奇,Git记录了被修改的文件,我们也可以查看具体修改的内容

4、提交修改后的内容
这步操作和第二步一样,此处不在赘述。

5、查询提交记录
我们可以用git log命令来打印输出我们的提交记录。

当然,为了更加清晰直观的分析提交记录,我们可以借助其他可视化工具,如GitHub的客户端,可以清晰的显示出每一次的提交的修改内容。

6、版本回退,来一次时光穿梭
现在我发现,修改后的Test.java有一些问题,想要找回修改前的那一版,我们可以使用git reset命令。
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交50267...(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

重新查看Test.java文件,发现我们的原先内容回来了。当然我们也可以指定ID来到达某一个版本。

7、查看历史命令
有时候,我们有一些误操作,但是我们又忘记了我们做过的错,我们就可以使用git reflog命令来查看我们敲过的命令

GIT学习笔记(1):创建版本库的更多相关文章
- Git学习笔记一--创建版本库、添加文件、提交文件等
Git,是Linus花了两周时间用C写的一个分布式版本控制系统.牛该怎么定义? 其实,很多人都不care谁写了Git,只在乎它是免费而且好用的!So do I! 下面开始我们的学习: 1.Git安装( ...
- Git学习笔记02-创建版本库
版本库就是一个目录,这个目录里面的所有文件都会被Git管理,每个文件的修改,删除都能追踪.以便在某个时刻追踪历史记录,或者还原 路径切换,查看文件命令和linux差不多,cd 文件路径 ls查看路径 ...
- Git版本控制工具(一)----git的安装及创建版本库
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Git 学习(二)版本库创建
Git 版本库创建 什么是版本库(repository)? 可理解为文件仓库.由Git管理每个文件的新增.修改及删除,但这个仓库可以追溯历史.可还原至任意历史节点. 版本库创建 创建一个版本库非常简单 ...
- Ubuntu下Git的使用之创建版本库
创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以 ...
- Git 的安装和创建版本库 。
Git 的优点就不再多说了 .直接进入正题吧 . 安装Git 首先可以尝试输入 Git 看看有没有反映 . $ git The program 'git' is currently not insta ...
- Git的安装和创建版本库
1.Git是分布式版本控制系统 2.安装Git 下载Git后,按照默认设置即可实现安装,安装完毕后点击git目录下的Git Bash 输入以下命令符: git config --global user ...
- Git学习笔记(2)-创建仓库
一.Git简介 1.Git是什么 Git是分布式版本控制系统 2.Git有什么特点 (1)Git是分布式的SCM,SVN是集中式的 (2)Git每个历史版本存储完整的文件,SVN存储文件差异 (3)G ...
- Git教程-安装与创建版本库
Git是一个分布式版本控制系统,他通过命令行使用的工具,Github是提供Git仓库托管服务的网站 安装参考: https://www.liaoxuefeng.com/wiki/89604348802 ...
- git 学习之什么是版本库
什么是版本库? 我们一般把版本库也叫仓库(repository),其实我们可以简单的把它看成一个目录,只不过目录里面的文件都会由 Git 进行管理,当我们对文件进行修改.删除.Git 都可以对其进行跟 ...
随机推荐
- osgEarth的agglite插件使用例子feature_rasterize.earth
<!-- osgEarth Sample Demonstrates use of the "agglite" feature rasterization driver. -- ...
- php学习九:存取器&魔术方法
当声明属性的时候用到了private,那么的话只能本类中才能访问此属性,其他地方无法使用,这个时候需要给外界提供一些方法来使外界访问 方法一:存取器: 可以提供一个public的方法来使外界对类里面的 ...
- 《C++ Primer Plus》第13章 类继承 笔记
类继承通过使用已有的类(基类)定义新的来(派生类),使得能够根据需要修改编程代码.共有继承建立is-a关系,这意味着派生类对象也应该是某种基类对象.作为is-a模型的一部分,派生类继承基类的数据称源和 ...
- cocos2dx游戏--欢欢英雄传说--添加触摸响应
主要的调整就是将HelloWorldScene改成了MainSecne,然后将Player作为了MainScene的私有成员变量来处理.修改了人物图片,使用了网上找到的三国战纪的人物素材代替我之前画的 ...
- poj_1236 强连通分支
题目大意 有N个学校,这些学校之间用一些单向边连接,若学校A连接到学校B(B不一定连接到A),那么给学校A发一套软件,则学校B也可以获得.现给出学校之间的连接关系,求出至少给几个学校分发软件,才能使得 ...
- poj_2752 kmp
题目大意 给定字符串S,求出S的所有可能相同前后缀的长度.比如: "alala"的前缀分别为{"a", "al", "ala&qu ...
- React基础---->ReactJS的使用(一)
ReactJS的初次使用,比较简单的例子. React的使用 一.下载ReactJS,地址:http://reactjs.cn/react/downloads.html,直接解压就行. 二.在html ...
- LeetCode——Best Time to Buy and Sell Stock III
Description: Say you have an array for which the ith element is the price of a given stock on day i. ...
- poj3744 Scout YYF I[概率dp+矩阵优化]
Scout YYF I Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8598 Accepted: 2521 Descr ...
- Egret置于后台时,暂停游戏逻辑 (Egret 5 )
官网教程-生命周期:http://developer.egret.com/cn/2d/lifecycle 主要是在游戏置于后台时,关闭游戏逻辑.渲染逻辑和背景音乐,保证更好的用户体验. 一 Egret ...
