一、Git简介
1、Git概述
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 Git 是 [Linus Torvalds](https://baike.baidu.com/item/Linus Torvalds/9336769) 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 与常用的版本控制工具 CVS, SVN等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
2、Git的作用
2.1 项目版本管理
使用git保存项目每一个开发过程中的版本
2.2 多人协同开发
使用git实现多人协同开发
Git的作用 |
---|
3、Git 的结构
- **工作区:**就是你在电脑里能看到的目录。
- **暂存区:**英文叫stage, 或index。一般存放在 “.git目录下” 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
- **版本库:**工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
4、Git的工作原理
Git工作流程 |
---|
二、Git安装
1、下载Git
- 官网地址:https://git-scm.com/downloads
- 第三方镜像地址(下载更快):https://npm.taobao.org/mirrors/git-for-windows/
2、安装Git
直接点击安装即可(一路下一步即可)
3、配置环境变量
当前版本可以自动配置环境变量
4、测试git是否安装成功
5、安装git桌面工具(可以不安装)
- 安装小乌龟工具(Git的可视化工具) TortoiseGit-2.4.0.2-64bit.msi
三、Git基本操作
1、设置Git用户
自报家门
git config --global user.email “you@example.com”
git config --global user.name “Your Name”
查看信息
git config -l
2、新建仓库
选择一个目录,执行指令:git init
git init
3、查看仓库状态
执行 git status 可以看到工作区中文件的状态
git status
4、添加到暂存文件
git add .
5、提交文件
执行 git commit -m “这里写提交的描述信息” 作用是将暂存区的文件存入分支,形成一个版本
git commit -m '提交信息'
6、查看日志
git log 查看提交日志
git log --oneline (查看简洁基本信息)
git log --all (查看所有的版本)
git log
git log --oneline
git log --all
7、切换版本
执行 git checkout 版本名称 (切换到指定的版本)
git checkout 2a52a05
四、远程Git的服务器
- 国内git服务器:https://gitee.com/
- 国外git服务器:https://github.com/
- 私有Git服务器Gitlab:基于github在公司内部搭建Git服务器
1、使用Gitee远程服务器
1.1、创建Gitee账号
- https://gitee.com/ 注册账号
1.2、创建仓库
2、远程仓库命令
2.1、连接远程仓库
origin 给远程仓库地址取名字
2.2、提交内容到远程仓库
2.3、从远程仓库克隆代码
如果是第一次从远程仓库下载代码需要从远程仓库克隆代码到本地
克隆只做一次
2.4 、从远程仓库拉取代码
2.5、总结
多人协同开发时,写好代码的git push 上传到远程仓库;需要代码的 git pull 拉取代码即可。
步骤:
- 有人再次将本地仓库内容,上传到了远程仓库
- 此时另一方如果想获得更新,则需要做一次拉取 git pull
五、在IDEA上配置Git【重点】
1、在IDEA中关联Git
新版本的IDEA会自动检测到安装的git程序
2、在IDEA中操作Git
2.1、创建本仓库位置
- 方式1:在菜单中选择 VCS—>Create Git Repository
- 方式2: 在命令行中输入
git init
命令
2.2、将项目添加到暂存区
2.3、将项目提交到本地仓库
2.4 忽略提交文件
注意:提交项目到本地仓库或者是远程仓库,需要忽略一些无需提交的文件(如:target目录、.idea目录 、*.iml 等文件)
2.4.1 下载插件
2.4.2 使用插件,创建.gitignore文件
2.5、将项目提交到远程仓库
3、从远程仓库拉取项目
3.1 克隆项目(第一次)
3.2 拉取项目
4、分支管理
4.1、创建分支
4.2、切换分支
4.3、合并分支
- 将groupA分支修改一些内容提交到远程服务器
- 将分支切换到master分支
- 将master分支与groupA分支合并
- 指定要合并的分支
5、查看历史记录
6、版本差异对比
7、回到之前的版本
如果是单个文件回到之前版本,直接右击文件选择查看历史版本
如果是多个文件回到之前的版本,那么需要右击项目然后选择查看历史版本
8、解决冲突
- 开发人员A修改了TestServlet文件,并提交到远程仓库
- 开发人员B修改了TestServlet文件,并提交到远程仓库
此时当开发人员B提交到远程仓库的时候,会出现冲突
- 修改冲突代码
合并完成之后,再次提交最终版本的代码
9、邀请其他人参与项目开发
分支的权限管理
10、常见问题
当第一次链接远程仓库的时候,用户名或密码输错了。清除window凭据即可