Git的使用

Git是世界上最先进的分布式版本控制系统,克隆一个项目的速度非常快

每个开发都可以从master上克隆一个本地版本库,就算没有网络,也可以提交代码到本地仓库,查看log 创建项目分支等等

每个版本库都可以创建无限个分支,分支是个完整的目录,且这个目录拥有完整的实际文件

一、安装

在网上搜索一下安装教程就可以了,这里就不介绍了

安装完成后,再开始菜单里找到“Git”->“Git Bash”,弹一个类似命令行窗口的东西,就说明Git安装成功

接着需要设置一下机器信息,这台机器上的所有Git仓库都会使用这个配置

$ git config --global user.name "username"
$ git config --global user.email "email@example.com"

二、创建版本库

1、创建一个空目录(最好不要包含中文)

$ mkdir mymenu
$ cd mymenu
$ pwd
/Users/hxk/mymenu

pwd命令显示当前目录

2、初始化仓库

git init 命令把这个目录变成git可以管理的仓库

$ git init
Initialized empty Git repository in /Users/hxk/mymenu/.git/

初始化一个空的仓库,目录下多了.git目录

系统自动创建了唯一一个master分支

版本控制系统只能跟踪文本文件的改动,且编码方式是utf-8

三、文件的基本操作

创建一个test.txt文件,内容如下:

Hello World

1、添加文件到仓库

$ git add test.txt

2、提交文件到仓库

$ git commit -m "自定义的名称"

-m后面输入的是本次提交的说明,提交成功后会显示:

1 file changed:1个文件被改动(我们新添加的readme.txt文件);

2 insertions:插入了两行内容(readme.txt有两行内容)。

为什么Git添加文件需要 add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件

$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."

如果提交的备注写错了,可以用以下命令修改刚刚提交的备注

$ git commit --amend

3.修改文件

将test.txt文件修改如下:

Hello World ABC

提交

$ git add test.txt
$ git commit -m "append ABC"

每次commit都会生成一个“快照”

4.查看历史记录

$ git log
commit 1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master)
Author: hxk <hxk@gmail.com>
Date:   Fri July 20 21:06:15 2018 +0800
 
    append ABC
 
commit eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0
Author: hxk <hxk@gmail.com>
Date:   Fri July 20 20:59:18 2018 +0800
 
    a new file

git log显示最近 到最远的提交日志,我们可以看到两次提交,最后一次是append ABC

gie的版本号是用SHA1计算出来的一个16进制数

如果嫌输出信息太多,可以加上--pretty=oneline

$ git log    --pretty=oneline
1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master) append ABC
eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0 a new file

5.回退 历史版本

$ git reset

首先,Git必须知道 当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交

1094adb...,上一个版本就是HEAD,上上一个版本就是HEAD,当然往上100个版本写

100个‘比较容易数不过来,所以写成HEAD 100’。

回退上一版本

$ git reset    --hard HEAD^
HEAD is now at eaadf4e a new file

这时再次查看历史版本

$ git log
commit eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0
Author: hxk <hxk@gmail.com>
Date:   Fri July 20 20:59:18 2018 +0800
 
    a new file

之前哪个版本已经看不到了,这时如果想回到之前那个版本,需要知道版本号,git

内部有个指向当前版本的head指针,将指针从当前版本指回去,所以 git回退版本特别快

$ git reset --hard 1094adb7

6.查看历史命令

要是不记得刚才的版本号,可以使用以下命令:

$ git reflog

7.查看状态

$ git status

四、工作区和暂存区

Git和SVN的一个不同之处就是有暂存区的概念

名词解释:

工作区(Working Diectory):指的是在电脑里能看到的目录,比如mymenu文件就是一个工作区

版本库(Repository):Git目录,Git的版本库里存了很多东西,其中最重要的就是称为

stage(或者叫index)的暂存区,还有Git为我们自动创建的第一分支master,以及指向master的

一个指针叫 HEAD。

git add是把需要提交的文件添加到暂存区

git commit是把暂存区的所有内容提交到当前分支

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值