Git基础入门

GIt基础入门

  • 1、Git的基础概念
    • Git中的三种状态
    • 基本的Git工作流程
  • 2、安装并配置Git
  • 3、Git的基本操作
    • 获取Git仓库的两种方式
    • 在现有目录中初始化仓库
    • 工作区中文件的4中状态
    • 检查文件的状态
    • 跟踪新文件
    • 提交更新
    • 暂存已修改的文件
    • 撤销对文件的修改
    • 向暂存区中一次性添加多个文件
    • 取消暂存去中的文件
    • 移除文件
    • 忽略文件
  • 4、Git本地分支操作
    • 分支的概念
    • master主分支
    • 功能分支
    • 查看分支列表
    • 创建新分支
    • 切换分支
    • 分支合并
    • 跟踪分支

1、Git的基础概念

Git中的三种状态

  1. 已修改modified
    工作区的文件被修改了,但是还没有放到暂存区,就是已修改的状态
  2. 已暂存staged
    如果文件已修改并放入了暂存区,就属于已暂存的状态了
  3. 已提交committed
    如果git仓库中保存着特定版本的文件,就是属于已提交的状态了

基本的Git工作流程

Stage Fixes
Commit
working Directory
Staging
.git directory

2、安装并配置Git

安装Git之后,要做的第一件事就是配置自己的用户名和邮箱地址。
基本操作:

git config --global user.name"//(写自己用户名)"
git config --global user.email"//(写自己邮箱)"

注意:如果使用了–global选项,那么该命令只需运行一次

  • 通过用git config --global user.namegit config --global user.email配置的用户名和邮箱地址,会被写入到C:/Users/用户名文件夹/.gitconfig文件中,这个文件是全局配置文件,配置一次即可永久生效。
  • 可以运行一下终端命令查看全局配置信息
//查看所有的全局配置项
git config --list --global
//查看指定的全局配置项
git config user.name
git config user.email
  • 可以使用git help命令,无需联网即可在浏览器打开帮助手册

3、Git的基本操作

获取Git仓库的两种方式

  1. 将尚未进行版本控制的本地目录转换为Git仓库
  2. 从其他服务器上克隆一个已经的Git仓库

在现有目录中初始化仓库

如果自己有一个尚未进行版本控制的项目目录,想要用Git来控制它,需要执行一下两个步骤:

  1. 在项目目录中,通过鼠标右键打开“Git Bash”
  2. 执行git init命令将当前目录转化为Git仓库

工作区中文件的4中状态

未被跟踪
未被Git管理
已被Git管理
未修改Unmodified
已修改modified
已暂存staged

检查文件的状态

可以使用git status 命令查看文件处于什么状态
git status的精简等价命令是git status --s或者是git status --short

例如:
Git基础入门_第1张图片出现Untracked file的文件意味着Git之前的快照中没有这些文件,Git不会自动将其自动纳入跟踪范围。

跟踪新文件

使用git add 开始跟踪一个文件。
运行以下命令:
在这里插入图片描述

提交更新

此时暂存区中有一个hello.js文件等待被提交到Git仓库中进行保存,可以执行 git commit 命令进行提交,其中 -m选项后面是本次提交消息,用来对提交的内容做进一步的描述。
运行以下命令:
在这里插入图片描述

暂存已修改的文件

目前,工作区中的hello.js文件已经被修改,如果暂存这次修改需要再次运行git add 命令,这个命令是多个功能的命令,主要有三个功效

  1. 可以用它开始跟踪新文件
  2. 把已跟踪的、且已修改的文件放到暂存区
  3. 把有冲突的文件标记为已解决状态

撤销对文件的修改

运行 git checkout 命令可以还原成Git仓库中所保存的版本
注意:所有的修改会丢失,且无法恢复,危险性较高,请谨慎操作

向暂存区中一次性添加多个文件

如果需要被暂存的文件个数较多,可以使用 git add . 命令,一次性将所有的新增和修改过的文件加入暂存区.

取消暂存去中的文件

如果需要从暂存区中移除对应的文件,可以使用 git reset HEAD 要移除的文件名称 命令

移除文件

从Git仓库中移除文件有两种方式

  1. 从Git仓库和工作区中同时移除对应文件
  2. 只从Git仓库中移除指定文件,但保留工作区中对应的文件

忽略文件

一般我们总会有些文件不需要纳入Git管理,也不希望它们总出现在未跟踪文件列表。在这种情况下,我们可以创建一个名为 .gitnore 的配置文件,列出要忽略的文件的匹配模式
文件 .gitnore 的格式规范如下:

  • #开头的是注释
  • /结尾的是目录
  • /开头防止递归
  • !开头表示取反
  • 可以使用glob模式进行文件和文件夹的匹配

4、Git本地分支操作

分支的概念

分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。在某个时间点,两个平行宇宙合并了,结果,你就既学会了Git又学会了SVN。

master主分支

在初始化本地仓库Git的时候,Git已经默认帮我们创建了一个名字是master的分支,通常我们把master分支叫做主分支。
在实际工作中,master主分支的作用是:用来保存和记录整个项目已完成的功能代码

功能分支

由于程序员不能直接在master分支上进行功能的开发,所有就有了功能分支的概念,功能分支指的是专门用来开发新功能的分支,它是从master的主分支上分叉出来的,当新功能开发且测试完毕后,最终需要合并到master主分支上。

查看分支列表

查看当前Git仓库的分支列表,可以使用 git branch 命令。

注意:分支名字前的 * 号表示当前所处的分支。

创建新分支

使用 git branch 分支名称 命令可以基于当前分支,创建一个新的分支,此时,新分支中的代码和当前分支完全一样。

切换分支

使用git checkout 分支名称命令可以切换到指定分支进行开发

分支合并

功能分支的代码测试完毕之后,可以使用 git checkout msatergit merge 分支名称将完成后的代码合并到master分支上。

注意:假设要把C分支的代码合并到A分支上,则必须先切换到A分支上,在运行git merger 命令来合并C分支。

跟踪分支

跟踪分支指的是:从远程仓库中,把远程分支下载到本地仓库中。运行如下命令

//从远程仓库中,把对应远程分支下载到本地仓库中,保持本地分支和远程分支一致
git checkout 分支名称

//从远程仓库中,把对应的远程分支下载到本地仓库,并把下载的本地分支进行重命
名
git checkouut -b 本地仓库分支名称 远程仓库名称/远程分支名称

你可能感兴趣的