部门老大:小李,下星期就要入职了,这是咱们部门项目代码的链接,你先提前熟悉一下 我:…,不会呀 部门老大:就克隆代码呀 我:Ctrl+c,Ctrl+V ?
Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种 项目。 Git 易于学习,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作 流分支等特性。其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。
链接:https://pan.baidu.com/s/1AXiQv3szvhDmAfXI5vxloQ 提取码:ajpl 版本:2.37.1
首次安装一定要设置,否则首次提交代码会报错,七其作用就是区分是哪一个操作者。跟将来登录的账号没有关系,只是本地的
基本语法: git config --global user.name 用户名 git config --global user.email 邮箱
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看 到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码。 ※注意:这里设置用户签名和将来登录 GitHub(或其他代码托管中心)的账号没有任 何关系。
案例实操:
检查设置是否成功:在windows的家目录下查看
要使用git管理一个目录首先要获得其管理权,所以就初始化
基本语法:git init
案例演示:
看不到这个文件的,因为这个文件默认是隐藏的,可以点查看将隐藏的项目显示出来
基本语法:git status
master表示当前分支,下图表示没有文件。
当有文件时hello.txt时:表示可以添加(红色的表示未被追踪)
基本语法:git add 文件名
提交之后,只是存在暂存区
基本语法:git commit -m “日志信息” 文件名
基本语法: git reflog 查看版本信息 git log 查看版本详细信息
基本语法:git reset --hard 版本号
对文件修改之后,追加,提交,然后就有两个版本了
指针指向那个版本就表示当前在那个版本
版本穿梭:
什么是分支?
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独 分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时 候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是 一个单独的副本。(分支底层其实也是指针的引用) 同时并行推进多个功能开发,提高开发效率。 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败 的分支删除重新开始即可。
操作命令
git branch -v
git branch 分支名
git checkout 分支名
切换会master分支,查看文件,发现在hot-fix中修改的在master中没有。想要改变就可以使用分支合并
分支合并
命令:git merge 分支名 将分支合并到当前的分支上 注意:当前的情况:这个分支名是hot-fix
此时:
1.产生冲突
冲突产生的原因: 合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替 我们决定使用哪一个。必须人为决定新代码内容。
2.解决冲突
1.编辑有冲突的文件,删除特殊符号,决定要使用的内容 2.添加到暂存区 3.执行提交(注意:此时使用 git commit 命令时不能带文件名
3.演示案例:
首先我们在两个分支的文件的不同位置做修改 master:
hot-fix:
然后此时合并:出现冲突,自动合并失败
此时查看状态
解决: 手动打开那个文件:
将要保留的留下来,其他的删掉
最后,添加,提交(提交不能带文件名了,否则会报错)报错如下‘
正确提交如下:
最后查看:如下,表示合并成功