Git
安装
官方网址:https://git-scm.com/
Git的优势
大部分操作在本地完成 不需要联网
尽可能添加数据 不是删除或修改数据
分支操作非常快
完整性保证
与Linux命令全面兼容
结构
git 提供了三个不同的工作区,用来存放不同的内容
工作区 ——>写代码
暂存区 ——>临时存储
本地库 ——>历史版本
工作区——>git add——>暂存区——>git commit——>本地库
状态
git 三种不同的记录状态
- (modified) 已修改
- (staged) 已暂存
- (committed)已提交
基本操作
(1)状态查看工作区操作
git status 显示乱码
查看工作区 暂存区状态
(2) 添加工作区操作
git add[文件名] 将工作区新建/修改添加到暂存区
git add 1.txt
添加多个文件
git add 2.txt 3.txt
添加整个目录
git add ./a
添加多个目录
git add ./b ./c
添加所有文件
git add .
(3)提交操作
git commit -m "commit message"[file name]
将暂存区的内容提交到本地库
(4)查看历史记录操作
git log
git log // 完整格式
多屏显示控制方式:
空格向下翻页
b 向上翻页
q 退出
(5) 前进后退
git reset
可以用git log --pretty=oneline
基于索引值操作
git reset --hard[局部索引值]
git reset --hard a6ace91
使用^符号 只能后退
git reset --hard HERD^
注意: 一个^表示后退一步 n个表示后退n步
使用~符号 只能后退
git reset --hard HEAD~
注意:表示后退n步
(6) reset 命令的三个参数对比
–soft 参数
仅仅在本地库移动HEAD指针
–mixed 参数
在本地库移动HEAD指针
重置暂存区
–hard 参数
在本地库移动HEAD指针
重置暂存区
重置工作区
(7)删除文件并找回
前提: 删除前文件存在时的状态提交到了本地库
操作: git reset --hard[指针位置]
删除操作已经提交到本地库 指针位置指向历史记录
删除操作尚未提交到本地库 指针位置使用HEAD
(8)比较文件差异
git diff[文件名]
将工作区中的文件和暂存区进行比较
git diff[本地库中历史版本] [文件名]
将工作区中的文件和本地库历史记录比较
不带文件名比较多个文件
分支管理
1.什么是分支
在版本控制过程中使用多条线同时推进多个任务
2. 分支的好处
同时并行推进多个功能开发 提高开发效率
各个分支在开发过程中 如果一个分支开发失败 不会对其它分支有任何影响 失败的分支删 除重新开始
3.分支操作
创建分支
git branch[分支名]
如图:
查看分支
git branch
如图:
切换分支
git checkout[分支名]
如图:
合并分支
git merge[分支名]
如图:
(1)切换到接受修改的分支上
(2)执行 merge 命令
删除分支
git branch -d 分支名称
如果分支为未合并状态,不允许删除
git branch -D 分支名称
强制删除
解决冲突
冲突的表现
冲突的解决
第一步:编辑文件 删除特殊符号
第二步:把文件修改到满意的程度
第三步:git add[文件名]
第四步:git commit-m
注意:此时commit一定不能带具体文件名
总结: git的使用可以帮助我们在开发中,更好的实现项目的管理,让我们的开发更有效率。希望此篇能够帮助对于git的使用还很迷茫的人。