提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
粗略看,会用就行了!知识点很简单的
一、Git是什么?
Git概念:
Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的项目。
Git技术:公司必备,一定要会
【3】什么是版本控制?
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统 。
【4】为什么要使用版本控制?
软件开发中采用版本控制系统是个明智的选择。
有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态。
就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原先的样子。
但额外增加的工作量却微乎其微。你可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题出现的原因,又是谁在何时报告了某个功能缺陷等等。
【5】Git结构
二、Git使用
Git官网下载Git:https://git-scm.com/
1.代码托管中心_本地库和远程库的交互方式
【1】代码托管中心是干嘛的呢?
我们已经有了本地库,本地库可以帮我们进行版本控制,为什么还需要代码托管中心呢?
它的任务是帮我们维护远程库。
下面说一下本地库和远程库的交互方式也分为两种:
(1)团队内部协作
(2)跨团队协作
(3)托管中心种类:
局域网环境下: 可以搭建 GitLab服务器作为代码托管中心,GitLab可以自己去搭建
外网环境下:可以由GitHub或者Gitee作为代码托管中心,GitHub或者Gitee是现成的托管中心,不用自己去搭建
2.初始化本地仓库
点击Git Bash Here打开Git终端:
【1】在安卓的Git目录下创建一个文件夹:
【2】打开Git终端:
在下载的文件夹点击鼠标右键Git Bash Here:
进入以后先对字体和编码进行设置:
在Git中命令跟Linux是一样的:
(1)查看git安装版本:git --version
(2)清屏:clear
(3)设置签名:
设置用户名和邮箱:
(4)本地仓库的初始化操作:
.git目录是隐藏的:可以调出来查看:
查看.git下内容:
注意事项: .git目录下的本地库相关的子目录和子文件不要删除,不要胡乱修改。
3:Git常用命令
一、添加文件: add 提交文件:commit
展示:
【1】先创建一个文件:
【2】add就是将文件提交到暂存区:
【3】将暂存区的内容提交到本地库:
注意事项:
(1)不放在本地仓库中的文件,git是不进行管理
(2)即使放在本地仓库的文件,git也不管理,必须通过add,commit命令操作才可以将内容提交到本地库。
二、git status看的是工作区和暂存区的状态
创建一个文件,然后查看状态:
输入:git status
红色的Demo2.txt代表没有放入本地库
然后将Demo2.txt通过git add命令提交至:暂存区:
查看状态:
绿色代表文件存储到暂存区里了,多少还没有存储到本地库
利用git commit 命令将文件提交至:本地库即可
三、git log 可以让我们查看提交的,显示从最近到最远的日志
当历史记录过多的时候,查看日志的时候,有分页效果,分屏效果,一页展示不下:
下一页:空格
上一页: b
到尾页了 ,显示END
退出:q
日志展示方式:
【1】方式1:git log —》分页
【2】方式2:git log --pretty=onelint
【3】方式3:git --oneline
【4】方式4:git reflog
多了信息:HEAD@{数字}
这个数字的含义:指针回到当前这个历史版本需要走多少步
四、reset命令:前进或者后退历史版本
复制:在终端中选中就是复制了
粘贴: 右键:paste
五、删除文件_找回本地库删除的文件
【1】新建 一个Test2.txt文件
【2】将它add到暂存区中
【3】再通过commit提交到本地库
【4】删除工作区中的Test2.txt:删除参数:rm + 文件名
【5】将删除操作同步到暂存区:
【6】将删除操作同步到本地库:
【7】查看日志:
【8】找回本地库中删除的文件,实际上就是将历史版本切换到刚才添加文件的那个版本即可:
六、diff命令
【1】先创建一个文件里面添加点内容,比如aaa,添加到暂存区,再提交到本地库:
【2】更改工作区中Test3.txt中内容,增加内容
导致:工作区 和 暂存区 不一致,比对
总结: git diff [文件名] —》 将工作区中的文件和暂存区中文件进行比较
比较暂存区和本地库中差别:
3:SSH免密登录
免密操作:
【1】进入用户的主目录中:
【2】执行命令,生成一个.ssh的目录:
keygen — > key generation
注意:C要大写
后面的邮箱,是你的github注册的账号的时候对应的邮箱
三次回车确认默认值即可
发现在.ssh目录下有两个文件:
【3】打开id_rad.pub文件,将里面的内容进行复制操作:
【4】打开github账号:
【5】生成密钥以后,就可以正常进行push操作了:
对ssh远程地址起别名:
展示别名:查看别名是否成功:如下显示证明成功
到这里SSH免密登录就完成了!
ssh方式好处: 不用每次都进行身份验证
缺陷:只能针对一个账号
三、分支
1、什么是分支:
在版本控制过程中,使用多条线同时推进多个任务。这里面说的多条线,就是多个分支。
2通过一张图展示分支:
【3】分支的好处:
同时多个分支可以并行开发,互相不耽误,互相不影响,提高开发效率
如果有一个分支功能开发失败,直接删除这个分支就可以了,不会对其他分支产生任何影响。
1.操作分支
1.1GitHub账号注册
官网:https://github.com/
自行注册很简单!
1.2创建远程库
【2】录入信息:
【3】完成状态:
2.在本地创建远程库地址的别名
远程库的地址:
点击进入:
远程库地址比较长,每次复制比较麻烦
在Git本地将地址保存,通过别名
查看别名:
起别名:
3.推送操作
推送成功以后,查看自己的远程库:
4.克隆操作
克隆操作参数:
克隆操作可以帮我们完成:
(1)初始化本地库
(2)将远程库内容完整的克隆到本地
(3)替我们创建远程库的别名:
三、IDEA集成Git
1、IDEA集成Git:
导入好ok即可!
然后本地库的初始化操作:
然后你项目文件会报红,这时候不要紧,说明集成了Git,只是你的项目没有提交所有报红
本地库初始化完成了,生成了.git目录:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210514114743485.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2phdmFlRUVzZQ==,size_16,color_FFFFFF,t_70添加到暂存区,再提交到本地库操作; add +commit:
2、本地库和远程库的交互
因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在 git pull 之后,这句代码是在git 2.9.2版本发生的,最新的版本需要添加 --allow-unrelated-histories 告诉 git 允许不相关历史合并。
假如我们的源是origin,分支是master,那么我们需要这样写 git pull origin master --allow-unrelated-histories
这个方法只解决因为两个仓库有不同的开始点,也就是两个仓库没有共同的 commit 出现的无法提交。如果使用本文的方法还无法提交,需要看一下是不是发生了冲突,解决冲突再提交
push推送: git push -u origin master -f
先clone文件
在push操作
在IDEA中进行推送:
3、使用IDEA克隆远程库到本地
总结
注意事项: .git目录下的本地库相关的子目录和子文件不要删除,不要胡乱修改。
如何避免冲突:
【1】团队开发的时候避免在一个文件中改代码
【2】在修改一个文件前,在push之前,先pull操作
童靴们,到这里学会了吗?