git初识

Git是目前世界上最先进的分布式版本控制系统(没有之一)
Git教程 - 廖雪峰的官方网站
GitHub是通过Git进行版本控制的软件源代码托管服务。GitHub同时提供付费账户和免费账户,这两种账户都可以创建公开或私有的代码仓库。
GitHub官网

一些基本概念:

  • 工作区(Working Directory):电脑里存在的目录

  • 版本库( Repository):工作区的隐藏目录.git

    • stage:暂存区
    • master:主分支,自动创建的第一个分支
    • HEAD:指向master的一个指针

1. 下载安装Git

  • Git下载,选择对应的操作系统下载即可

  • 双击默认安装(以Windows系统为例),安装完毕后,win+r,启动命令行窗口,输入git命令,可以看到下图结果

    image

2. 基础的Git命令学习

2.1 初始化仓库

  • 非系统盘非中文路径,建立一个文件夹learngit,如E:\learngit

  • 命令行窗口,通过如图所示命令,进入该目录,并通过git init命令,将该目录初始化为一个git仓库

    image

2.2 向仓库添加文件、提交文件

  • 在learngit目录中新建一个README.md文件,添加“个人简介”内容
# 1.个人简介
## 1.1 基本情况
## 1.2 联系方式

  • 使用git add命令,将文件添加到仓库
git add README.md

  • 使用git commint命令,将文件提交到仓库,提交的时候,一定要加说明!!
git commit -m "Personal profile"

到目前为止,我们完成了从初始化仓库,到添加文件,提交文件的一个完整过程,命令行窗口显示如图:

image

2.3 修改文件

接下来,我们对README.md文件进行一些改变,添加“教育经历”部分内容

# 1.个人简介
## 1.1 基本情况
## 1.2 联系方式

# 2.教育经历
## 2.1 学历教育
## 2.2 继续教育

如果不经过add,直接commit,将会出现以下结果

image
image

2.4 查看仓库状态

可以使用git status命令,查看仓库当前的状态,比如是都提交完了,还是有一些add的文件尚未提交等,如图

image

2.5 查看版本历史记录

到目前为止,我们的README.md文件经过了两次提交,怎么查看这些提交记录也就是版本呢?我们可以用git log命令进行查看

image

也可以使用图中命令一行显示一条记录

git log --pretty=oneline

image

那一大串d5cef7149e729a5f662ac41b01afdae1fa9883d8字样,是commit id,每提交一个新版本,实际上Git就会把它们自动串成一条时间线。

2.6 穿越到任意一个版本

当我们需要穿越到任意在记录中存在的版本去的时候,只需使用如下命令:

image

版本号很长,不需要写全,写前几位就可以了,Git会自动寻找
然后我们打开README.md文件,会发现

image

点击Y,文件就恢复成了第一版
同样,你也可以通过不同的版本号,去到你想去的版本~~

2.7 多文件提交

Git允许add多个文件,然后一次性通过commit来提交
比如我们在learngit目录加入一个图片文件,再放入一个文本文件

image

然后进行两次add

git add log.txt
git add me.jpg

然后查看git status

image

通过commit一次性提交两个文件

image

然后,自己尝试看看现在的版本记录吧

image

3. 总结:

  • git:查看系统有没有安装Git
  • 设置全局属性,用户名和邮箱
    • git config --global user.name "Your Name"
    • git config --global user.email “[email protected]
  • git init:创建版本库
  • git add hello.txt:将文件添加到临时区
  • git commit -m “create hello.txt file”:把文件提交到仓库
  • git status:查看当前的Git仓库状态
  • git log:查看从近到远的提交日志
  • git log --pretty=online:简略显示
  • git reset --hard HEAD:回退到上一版本
  • git reset --hard commit_id:穿梭到指定版本号的版本
  • git rm hello.txt:删除文件

注意

  • commit之前一定要先add
  • 可以进行文件夹所有文件提交,以及指定提交某些文件

你可能感兴趣的:(git初识)