Git版本控制

一、介绍

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

具有廉价的本地分支、方便的暂存区和多个工作流等功能。

官网:Git

集中式版本控制(SVN)

每台电脑通过客户端键连接中央服务器,提交文件修改或者获取最新的文件,一旦中央服务器宕

机,整个版本控制都无法使用

Git版本控制_第1张图片

分布式版本控制(Git)

每台电脑都拥有本地仓库,并可以将文件提交到远程仓库或者从中拉取最新文件,当远程仓库宕机

后,仍然可以在本地进行版本控制,在远程仓库恢复后进行合并

Git版本控制_第2张图片

Git版本控制_第3张图片

二、常用命令

1.基本命令

设置用户签名(姓名/邮箱)

git config --global user.name 名称
git config --global user.email 邮箱

Git版本控制_第4张图片

查看文件(C:\Users\xxx\ .gitconfig)是否设置成功

Git版本控制_第5张图片

初始化本地库

git init

Git版本控制_第6张图片

查看文件夹出现.git文件夹

Git版本控制_第7张图片

查看本地库状态

git status

Git版本控制_第8张图片

创建文件后查看:

Git版本控制_第9张图片

添加暂存区

git add 文件名

Git版本控制_第10张图片

暂存区的文件可以被删除

git rm --cached 文件名

Git版本控制_第11张图片

提交本地仓库

git commit -m 日志信息 文件名
git commit -am 日志信息 文件名(-am 包括加入暂存区和提交本地仓库两步)

Git版本控制_第12张图片

展示差异

git diff

Git版本控制_第13张图片

查看日志

git reflog //查看版本日志
git log //查看详细版本日志
//指定输出格式
git log --pretty=format:"%h -%an, %ar:%s"
%h 提交版本号(简化)
%an 作者名称
%ar 修订日期(距今)
%ad 修订日期
%s  附加说明
​
git log --graph //图形化输出(展示分支)

Git版本控制_第14张图片

Git版本控制_第15张图片Git版本控制_第16张图片

版本穿梭

git reset --hard 版本号

原始文件信息和版本日志

Git版本控制_第17张图片

切换版本后查看文件信息和版本日志

Git版本控制_第18张图片

2.分支命令

git branch -v //查看本地库所有分支
git branch 分支名称 //创建分支(会复制一份master主分支的内容)
git checkout 分支名称 //切换分支

 Git版本控制_第19张图片

Git版本控制_第20张图片

git merge 分支名称 //将指定的分支合并到当前分支上

Git版本控制_第21张图片

冲突合并:

当两个分支在同一文件的同一位置存在两种不同的修改时,git无法决定使用哪一种修改,需要人工合并

Git版本控制_第22张图片

Git版本控制_第23张图片

将dev分支合并到master分支冲突

Git版本控制_第24张图片

修改内容后提交到本地仓库不需要写文件名称

Git版本控制_第25张图片

暂时保存当前修改

git stash [push] //保存修改
git stash apply //恢复之前保存的修改

Git版本控制_第26张图片

Git版本控制_第27张图片

Git版本控制_第28张图片

3.远程库命令

git remote -v //查看所有远程仓库
git remote add 远程仓库别名 远程仓库地址 //创建远程仓库别名

创建成功查看,拉取fetch和推送push命令都可以使用别名

Git版本控制_第29张图片

git push 远程仓库地址/远程仓库别名 分支名称 //推送到远程仓库

Git版本控制_第30张图片

 

git pull 远程仓库地址/远程仓库别名 分支名称 //拉取远程仓库到本地仓库

拉取成功后更新本地仓库到最新状态

Git版本控制_第31张图片

//克隆远程仓库 --> 1.拉取远程代码 2.初始化本地仓库 3.创建远程仓库别名为origin
git clone 远程仓库地址

Git版本控制_第32张图片

Git版本控制_第33张图片

三、远程仓库

远程仓库即代码托管中心,基于网络分为两种:

局域网

  • GitLab

互联网

  • Github

  • Gitee

同一个团队的成员可以直接通过pullpush命令进行操作,团队外的成员需要先将项目fork到自己的远程

仓库,然后对这个仓库进行操作,最后提交pull request请求让原项目组审核合并。

Git版本控制_第34张图片

Git版本控制_第35张图片

你可能感兴趣的:(Git,git,github,svn)