Git
学之前先看一张图
工作区就是你建立的文件夹,比如新建个test文件,版本库就是add commit之后乱七八糟的东西
Git的使用步骤:
1.下载与安装,去官网安装就行了 傻瓜式安装,一路点next
2.随便建立一个文件夹,比如说test,git的要求是:你要想让它帮你进行管理,必须先有一个文件夹,然后右键 git bash here
3.git config --global user.name/email
4.git init 对一个文件夹进行初始化,这个初始化就是为了让git对这个文件夹进行版本管理工作,而初始化完成后,在当前这个文件夹下面会有一个隐藏的.git文件,这个文件夹就是我们所说的版本库,现在就可以用git对其下的文件进行版本控制,比如说进行一个版本的回退等等
Git基础操作
git status 查看工作区的状态,一般来说有两种状态
1.nothing to ...:没有被提交的信息,当我们新建个test.txt文件时 在输入git stauts 时候 就会出现以下状态
2.untracked files :未被追踪的文件,就是还没被git给管理起来,这个时候我们就需要git add test.txt,这时候文件就会add到暂存区,接下来在进行git commit -m "first fils" 把文件从暂存区commit到提交区,这时候我们的文件才真正被git管理起来,而我们commit到提交区的文件都会有一个id号,根据这个id 就可以进行版本切换了
所以说:要想git对你的文件进行版本管理有经两个步奏,第一个 git add git commit -m ,可以随时使用git status 在工作区进行状态查看
Git log 和版本切换
git log 就是查看信息的它有三个状态
commit: 这就是文件的id
author: 就是前面的配置,git.globle --user.name
date: 提交的日期
打出的信息太多,能不能简化一下呢,答案是可以的
git log --pretty online(可以自己试一下)
如何进行版本的切换
git reset --hard id就可以进行版本的切换了
git reset --hard HEAD^ 回到上一个版本
git reset --hard HEAD^^ 回到上上个版本
git reflog 进行所有的版本id查询
分支
master分支是主分支,也就是git 为你默认创建的分支,既然有主分支就一定有其他的分支,git的强大之处就是一个多人协作开发的概念,不仅是一个人开发进行版本控制,还可以多人同时开发进行版本控制,
那么如何创建一个分支呢?
git checkout -b 分支名: 创建分支
git checkout 分支名: 切换分支
git branch : 查看所有分支,并且可以看到当前所处的分支
git branch -d 分支名 :删除分支(会有不能删除的提示,这个提示是告诉你需要进行分支合并)
git branch -D 分支名:强制删除
你在分支上写的内容,进行commit提交,当你切换到主分支的时候是看不到的
分支合并和冲突解决
主分支master我们不会去动,只会用于版本的发布,各自在自己的分支开发完成之后,需要将开发的内容合并到主分支上去
你要在主分支上进行合并,在master分支上进行:git merge 分支名,这样就能完成我们的合并了,这时候你在git branch -d 分支名,就能删除分支了
那在进行多人开发的时候,我们有时会碰到合并冲突问题,当我们合并到master分支上的时候,git会报一个冲突,为什么会合并不上呢?这个时候我们查看一下日志,的确没有合并上去,而文件里面有点变化,这就产生了冲突,我们就要进行手动修改了,当我们修改之后,然后查看一下git status 然后再进行add,commit的操作,在查看下log,发现已经合并,到此,冲突解决掉
打标签
commitid 不容易记住,能不能用一种独特的方式去记住每个版本?
想要给最新的一个版本打上标签,git tag v1.0,将最新版本commitid对应上v1.0
查看当前标签总数:git tag
给之前错过的commitid打标签: git tag v0.8 commitid
如果还嫌不够 那我们还可以给标签加一个说明:git tag v1.0 -m "这里是说明"
删除标签:git tag -d v1.0
补充:HEAD就是表示当前最新的一个commitid,也就是最新的指针指向
前面我们说的冲突也是跟HEAD的指向有关
—— The end ——
领取专属 10元无门槛券
私享最新 技术干货