git命令01

1.了解git工具产生的背景知识。
git 是什么? 目前它是一种分布式版本控制系统。
那什么又是版本控制系统? 一种能自动帮助记录每次文件的改动,不仅仅是记录自己对文件的修

改变化,而且可以记录其他人对同一文件修改的变化。如果想知道某个文件的某次修改哪里,就

直接通过这种软件来查看。这种软件就是版本控制系统。
2.安装git
对于centos :yum install -y git
对于ubuntu/debian: sudo apt-get install git

3. git 工作流程
本地仓库由git维护的三颗"树" 组成
(1)第一个是你的工作目录(working directory),它持有实际文件
(2)第二个是暂存区(Index),它像个缓存区域,临时保存你的文件修改
(3)第三个是HEAD,直接最后一次提交的结果

4. 创建本地库
(1)第一步
mkdir  learngit  #创建工作目录

cd leartgit      #进入到工作目录中
(2)建立仓库:把工作目录初始为一个仓库。
git init        #Initialized empty Git repository in /root/learngit/.git/
完成后可以发现,在工作目录下生成了一个以点开头的隐藏目录.git

注意:也不一定必须在空目录下创建Git仓库,选择一个已经有东西的目录也是可以的
(3)可以文件添加到版本库(也就是可以在目录创建文件)
在工作目录里创建文件,编写文件内容。vim filename 文件创建后,可以命令将文件添加到仓

库里面。
命令一:使用命令git add告诉Git,要将某文件添加至仓库里面
git add  filename
命令二:使用命令git commit告诉Git,把文件提交到仓库:
git commit -m "wrote a readme file"  # -m 后面的""用来说明文件修改说明信息

可以使用多次git add 命令添加文件,而git commit 将一次性提交所有修改的文件

小结:初始化一个Git仓库,使用git init命令。
添加文件到Git仓库,分两步:
第一步,使用命令git add <file>,注意,可反复多次使用,添加多个文件;
第二步,使用命令git commit,完成。
命令三:git status命令可以让我们时刻掌握仓库当前的状态。文件是否被修改或者文件被修改

但是没有被提交。

命令四:git diff filename
找出文件前后修改前后对比的内容

(4)版本回退
当文件内容多次被修改后,并且进行git add 和 git commit -m "" ,这会出现文件的多个版本
那么如何查文件的历史版本和当前版本呢?
命令五:git log
git log命令显示从最近到最远的提交日志,可以看文件被修改提交了几次
git log  --pretty=oneline #每个历史版本按一行输出
$ git log --pretty=oneline
3628164fb26d48395383f8f31179f24e0882e1e0 append GPL
ea34578d5496d7dd233c827ed32a8cd576c5ee85 add distributed
cb926e7ea50ad11b8f9e909c05226233bf755030 wrote a readme file
其中前面很长的字符是commit_id(版本号,一旦提交都有与之对应的版本号)
如果想要从当前的文件版本回退到历史的某个版本,该有什么命令?
在Git中,用HEAD表示当前版本,也就是最新的提交
上一个版本就是HEAD^,
上上一个版本就是HEAD^^,
前N个版本表示:HEAD~N。
命令五来了:git reset --hard
git reset --hard^ HEAD(某个版本) #复位到最近的前一个版本。当然可以
git reset --hard "commit_id"

小结:
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset

--hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本

明天:学习远程仓库
怎么添加远程库与怎么从远程库克隆。还有什么是分支管理、标签管理,最后是搭建git服务器。

posted @ 2016-06-05 21:27  系统运维  阅读(250)  评论(0编辑  收藏  举报