git进阶

1、git:为分布式版本控制工具

git进阶_第1张图片

2、git进阶_第2张图片

当新创建一个文件后,文件通过指令可以到达暂存区,暂存区是仓库和工作区的缓冲区域

当commit后,会把文件放入本地仓库,每一次commit都会创建一个版本

《=================================小区域================================》

git status 《查看当前目录下的所有的文件的git状态》
git add . 《“.”是通配符,将当前目录下的所有文件添加到暂存区》
git commit -m "名称" 《将暂存区的文件提交到仓库》
 

《=================================小区域================================》

当对某个文件更改后,文件又会被放进工作区,然后再次使用 git.add. 文件状态再次变为即将被提交的修改

版本回退

git提供版本回退的功能

《=================================小区域================================》

git reset --hard commitID 《将版本回滚到ID为commitID的那次》
git log  《打印仓库里存在的所有版本》
git reflog 《打印已经删除的记录 查找删除掉的commitID》
 

《=================================小区域================================》

问题:git add .是将目录中的所有文件添加的暂存区,如果目录中存在两个文件,想要让其中的一个施行git版本管理,另一个不施行,有什么好的方案吗?

可以创建一个ignore文件 把不需要add的文件放在这个目录里面

《=================================小区域================================》

git branch 《打印仓库的所有分支》
git branch 分支名字  《创建名字为分支名字的分支》
git-log 《直观展示分支之间提交的内容》
git checkout dev01 《将当前分支切换到dev01的分支》
git checkout -b 分支名 《即使这个分支不存在也可以创建并切换到这个分支》

《=================================小区域================================》

git-log指令后显示的命令行中的 HEAD指向谁,谁就是当前的分支,

切换分支里的文件也会随之切换 

merge 合并操作

当git上的两个分指上出现了版本差异(比如1分支有a文件,2分支有b文件)

这个两个文件=可以代表两个不一样的开发功能 这个时候就需要合并操作

一般来说,都是把其他分支合并到master上,需要如下几步操作。

《=================================小区域================================》

git checkout master 《切换当前分支为master分支》

git merge 要合并的分支名字 《将当前分支合并到master上》

《=================================小区域================================》

这个时候就将两个分支合并合到了master分支上

《=================================小区域================================》

git branch -d b1 《删除分支,删除时需要做各种检查》
git branch -D -b1 《不做任何检查,强制删除》

《=================================小区域================================》

解决冲突

两个人同时更改了一个文件,会造成合并时候产生冲突 (同一个文件的同一行)

分支在开发中如何使用

你可能感兴趣的:(git)