Git—基础知识及经常使用命令(系列一)

一、集中式和分布式区别

1.1 集中式

  集中式版本控制系统,版本库是集中存放在中央服务器的。用户都是用本身的电脑,要先从中央服务器取得最新的版本,而后coding,最后把代码推送到中央服务器。
  集中式版本控制系统的弊端是须要联网工做;
集中式linux

1.2 分布式

分布式

  分布式版本控制系统根本没有“中央服务器”,每一个人的电脑上都是一个完整的版本库,coding时无需联网,版本库就在各个用户的本地电脑上。
  相比于集中式版本控制,安全性更高,每一个用户电脑都有完整的版本库。
  Git拥有强大的分支管理,这是CVS、SVN不具有的优点。git

二、git的安装和使用

2.1 git安装

(1)linux下:sudo apt-get install git
(2)windows下:安装gitbushwindows

2.2 git使用

(1)建立工做区
  在本地电脑里建立空目录,即为工做区,这个目录里的全部文件均可以被git管理,每一个文件的修改、删除都可以被git追踪,便于后期追踪历史记录,在某个时刻能够还原;
(2)使用git管理仓库(版本库)
  git init
  在该仓库中会多一个.git目录;(若是不须要git管理,则删除这个目录就能够实现)
注意
  若在linux看不到这个目录,可使用ls -ah查看这个隐藏的目录;
(3)git改动
  版本控制系统没法追踪图片、视频等二进制文件,且Microsorf的word格式的也是二进制格式,因此也没法追踪,只能知道其大小的改变。版本控制系统只能追踪文本文件的改动,如txt文件。安全

2.3 git操做案例

如在git仓库中添加一个test.txt文件服务器

2.3.1 将文件添加到仓库:

  git add test.txt分布式

2.3.2 将文件提交到仓库:

  git commit -m “提交test.txt文件”
-m后面输入的是本次提交的说明,便于后期查看提交记录;
注意
添加文件到Git仓库,分两步:
  使用命令git add <file>,注意,可反复屡次使用,添加多个文件也可使用git add -u一次性添加追踪的文件;
  使用命令git commit -m <message>,完成。版本控制

2.3.3 查看提交历史记录

  git log
  git log --pretty=oneline
每提交一个版本,git就会将它们自动串成一条时间线;日志

2.3.4 查看文件区别

  git diff <filename>
查看工做区和版本库里最新版本的区别:
  git diff HEAD -- <filename>code

2.3.5 查看某次提交修改不一样之处

  git show <commit-hash-id>视频

2.4 git log使用

  git log

2.4.1 查看特定的人的提交记录

  git log –author=xiaoming

2.4.2 压缩显示log

一个压缩后的每一条记录只占一行的输出:
  git log –pretty=oneline

2.4.3 查看文件改变

  git log --name-status

2.4.5 简略查看日志

  git log --graph --pretty=oneline --abbrev-commit

3.2 回退版本

(1)使用git log查看提交记录进行回退
  git reset --hard xxx
若要回退到上一个版本:
  git reset --hard HEAD^
或者使用commit-id(前几位便可)
  git reset --hard commit-id
(2)若想要恢复以前的回退
使用git reflog查看commit-id

相关文章
相关标签/搜索