Git

Git简介

git是一个开源的分布式版本控制系统,git不仅仅是一个版本系统,而且还是内容管理系统,工作管理系统
git官网:https://git-scm.com/

主流的版本软件

Git、svn
版本控制
1、本地版本控制
2、集中式版本控制
所有的版本数据都保存在一个服务器中,如果不联网就看不到历史版本
image.png
代表产品:SVN
3、分布式版本控制
每个人拥有所有的代码
image.png
Git和svn的区别
1、svn

Git安装配置

全局配置
配置文件
查看配置命令

用户配置
配置文件
查看配置命令

修改用户名

  1. git config --global user.name "ljs" #名称
  2. git config --global user.email "105501048@qq.com" #邮箱

Git架构

工作区:仓库中除了.git文件夹之外,其余空间皆是工作区

版本库:工作区中有一个隐藏的目录,这个目录不属于工作区,而是git的版本库,是git管理的所有内容

暂存区:存在于版本库中的一个临时区域,保存下一版本要提交的内容

分支:版本库存在若干个分支,提交的文件存储在分支中

架构图

image-20200823214652597.png

Git工作原理

Git仓库

对应的就是一个目录,这个目录中的所有文件被git管理起来,工作区+版本库=仓库

默认将一个项目的根目录,作为仓库

仓库中每一个文件的改动都由git跟踪

即会将本目录作为仓库,会在仓库内创建一个”.git“文件夹

构成

工作区

执行【git init】的目录中【.git】之外的区域,都为工作区。所有的文件都首先在工作区创建,然后可以存入仓库,进行版本控制。

暂存区

暂存区在【.git】目录中,工作区的文件进入仓库时候,需要先进入暂存区。

分支

版本控制,记录文件的诸多版本,分支就是这些版本的最终记录位置

远程仓库

远程仓库区别于本地仓库,可以实现多人共享代码、合并代码

1、远程仓库工作模式

image.png

push 将本地的最新信息发送到远程库
commit 将本地修改的信息提交到本地库
pull 取回远程库的某个版本
clone 从远程主机克隆一个版本库

2、远程仓库选型

github、码云

3、基本操作

1、注册git服务器账号

2、新建远程仓库

3、本地关联远程仓库

4、推送文件到远程仓库

5、克隆远程仓库

6、更新远程仓库内容

7、命令汇总

基本操作

1、仓看仓库状态

  1. git status

1.1、新建仓库

选择一个目录,执行指令

  1. git init

2、暂存文件

  1. git add .

将工作区中的所有文件

3、提交文件

  1. git commt -m "这里写该版本的描述信息"

将暂存区的文件存入仓库中,形成一个版本

GIT分支

Master一般作为项目的主分支
image.png
Git分支常用的命令

  1. #列出所有本地分支
  2. git branch
  3. #列出所有远程分支
  4. git branch -r
  5. #新建一个分支,但是仍然停留在当前分支
  6. git branch [branch-name]
  7. #新建一个分支,并切换到该分支
  8. git checkout -b [branch]
  9. #合并指定分支到当前分支
  10. git merge [branch]
  11. #删除分支
  12. git branch -d [branch-name]
  13. #删除远程分支
  14. git push origin --delete [branch-name]
  15. git branch -dr [remote/branch]

多个分支如果并行执行,就会导致我们的代码不冲突,也就是同时存在多个版本的
如果同一个文件在合并分支都被修改了,就会一起冲突,解决的方法是我们可以修改冲突文件后重新提交,选择要保留他的代码还是你的代码

==matser主分支应该非常稳定,用于发布新的版本,一般情况西允许在上面工作,工作一般情况下在新建的dev分支上工作。工作完成后,比如要发布,或者说dev代码稳定后,就可以合并到主分支master上。