Git的相关了解

155 阅读4分钟

一.关于版本控制

1.文件的版本

缺点:操作麻烦、命名不规范、容易丢失、协作困难。

2.版本控制软件

它是用来记录文件变化,以便将来查阅特定版本修订情况的系统,因此有时也叫做“版本控制系统”。

好处:操作简单,易于对比,易于回溯,不易丢失,协作方便。

分类:

本地版本控制系统

单机运行,使维护文件版本的操作工具化。

集中化的版本控制系统

联网运行,支持多人协作开发;但性能差,用户体验不好。

分布式版本控制系统——Git

联网运行,支持多人协作开发;性能优秀,用户体验好。

二.Git的基础概念

概念:一个开源式的分布式版本控制系统,是目前最先进,最流行的版本控制系统。

特点:项目越大越复杂,协同开发者越多,越能体现出Git的高性能和高可用性。

1.Git的特性

  • 直接记录快照,而非差异比较。

  • 近乎所有的操作都是本地执行。

2.Git的三个区域

工作区:处理工作的地方。

暂存区:已完成的工作的临时存放区域,等待被提交。

Git仓库:最终被放置的地方。

3.Git的三种状态

已修改:修改了文件,但还未将修改结果放到暂存区。

已暂存:对已修改文件的当前版本做了标记,使之包含在下一次提交列表里面。

已提交:文件已经安全的存放在Git仓库中。

三.Git的基本操作

获取git仓库的两种方式

  • 将尚未进行版本控制的本地目录转换为Git仓库。

  • 从其他服务器克隆一个已存在的Git仓库。

初始化仓库

打开Git Bash,执行git init命令。

工作区中文件的4种状态

未被Git管理:未跟踪。

已被Git管理:未修改,已修改,已暂存。

检查文件的状态

执行git status命令,也可以使用缩写git status -s/--short。

未被跟踪的文件前有红色的??;

在暂存区的文件前有绿色的A;

文件前有红色M的代表已修改还未放入暂存区;

修改且再次添加后文件前会出现绿色的M。

跟踪文件

执行git add 文件名 的命令。

一次性添加多个文件需执行git add . 的命令。

提交更新

执行git commit -m “提交消息”命令。

若想直接跳过暂存区直接进行提交则执行git commit -a -m “描述消息”。

撤销对文件的修改

执行git checkout --文件名。

注:所有修改都会丢失且无法恢复(危险性高,谨慎操作)。

取消暂存文件

执行git reset HEAD 要移除文件的名称。

移除文件

同时移除Git仓库和工作区中对应的文件:git rm -f 文件名 。

只从Git仓库中移除:git rm --cached 文件名。

查看提交历史

执行git log命令。

如何回退到指定版本

git reset --hard 。

git reflog (注:展示所有历史——旧版本)。

四.Git分支

了解master主分支和功能分支

master主分支:用来保存和记录整个项目已完成的功能代码。

功能分支:指的是专门开发新功能的分支。

查看分支列表

执行git branch命令。

注:分支前*表示当前所处的分支。

创建新分支

git branch 名称。

切换分支

git checkout 名称。

快速创建和切换

git checkout -b 名称。

合并分支

git merge 名称。

删除分支

git branch -d 名称。

注:强制删除将-d换成-D。

将本地分支推送到远程仓库

git push -u 仓库的别名 本地分支名称:远程分支名称。

注:-u是第一次执行时才需要的,之后就不需要了。

查看远程仓库中所有的分支列表

git remote show 远程仓库的名称。

拉取远程分支的最新的代码

执行git pull命令。

删除远程仓库分支

git push 远程仓库名称 --delete 远程分支名称。