今日内容
零、 复习昨日
二、介绍
三、Git安装
3.1 下载Git
下载git |
---|
 |
3.2 安装
3.3 基本配置
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
git config -l
3.4 测试
git version
四、架构
架构图 |
---|
 |
五、仓库
5.1 新建仓库
新建仓库 | 仓库目录 |
---|
 |  |
5.2 工作区
5.3 暂存区
5.4 分支
六、基本操作
6.1 查看仓库状态
未记录过的文件,是未跟踪状态 |
---|
 |
6.2 暂存文件
将工作区中的文件存入暂存区 |
---|
 |
6.3 提交文件
提交文件,形成一个版本 |
---|
 |
6.4 撤销已经add的文件

git restore --staged 文件名
6.5 撤销已经commit的文件
git reset HEAD^
git reset HEAD^^
git reset HEAD~
git reset HEAD~2
git reset db65e3c98e7e1f25887ebe66d50cd9120aea2ca0
git reset --mixed HEAD~
git reset --soft HEAD~
git reset --hard HEAD~
git revert head 撤销最近一次的提交
git revert head~ 撤销上一次的提交
git revert 735fdbb5156f4303516ed5c3a963f1
6.6 revert和reset的区别
七、分支
7.1 分支简介
分支由多个提交点组成,分支上会有一个指针,默认总是指向最新的提交点 |
---|
 |
7.2 分支操作
7.2.1 查看分支
默认只有master分支 |
---|
 |
7.2.2 创建分支
创建分支 |
---|
 |
7.2.3 切换分支
切换分支 |
---|
 |
再次查看分支情况 |
---|
 |
7.3 新建分支细节
新分支,默认有哪些内容?新分支拥有之前分支的全部内容
7.3.1 新分支初始内容
每个分支都有一个指针,新建一个分支,首先是新建一个指针 |
---|
 |
7.3.2 多分支走向
master分支未动,在dev分支增加一次commit |
---|
 |
master分支增加一个commit,dev分支再增加一个commit |
---|
 |
7.3.3 分支提交日志
提交情况如下 |
---|
 |
查看当前分支的提交日志 |
---|
 |
7.4 分支合并
合并前,分支状态 |
---|
 |
三方合并,将2 和3 的更改都累加在1 上,形成新的提交点 |
---|
 |
7.5 合并冲突
7.5.1 冲突演示
master分支修改hig.txt文件 |
---|
 |
dev分支修改hig.txt |
---|
 |
合并dev分支 |
---|
 |
冲突后,git会将两个分支的内容都展示在文件中 |
---|
 |
7.5.2 冲突解决
根据协商,再次编辑文件 |
---|
 |
提交 再次编辑后的文件 |
---|
 |
7.6 日志


八、远程仓库
8.1 远程仓库工作模式
远程仓库工作模式 |
---|
 |
8.2 远程仓库选型
8.3 基本操作
8.3.0 注册git服务器账号
8.3.1 秘钥&公钥
8.3.2 新建远程仓库
创建远程私有仓库-01 |
---|
 |
创建远程私有仓库-02 |
---|
 |
创建远程私有仓库-03 |
---|
 |
8.3.3 本地关联远程仓库
如此后,本地即可用“origin” 代指远程仓库 |
---|
 |
git remote add origin https://gitee.com/qiushiju/test.git |
8.3.4 推送文件到远程仓库
push |
---|
 |
输入凭证,如此码云才能接受此次上传的内容 |
---|
 |
8.3.5 克隆远程仓库
新建目录“repo2”,然后在其中执行 git clone |
---|
 |
远程仓库,复制到本地,并自动初始化为一个本地仓库 |
---|
 |
8.3.6 代码共享
有人再次将本地仓库内容,上传到了远程仓库 |
---|
 |
重点:此时另一方如果想获得更新,则需要做一次拉取 git pull |
---|
 |
【重点】每次想要往远程push代码,一定要先git pull,因为有可能远程代码已经更新,而你本地代码没有远程代码同步,此时直接push会拒绝!所以一定要先git pull拉取远程最新代码,与本地代码合并,合并后再执行git push推送到远程
8.3.7 拉取推送远程其他分支
git pull origin dev
git push origin master:dev
8.3.8 命令汇总
命令 | 描述 |
---|
git remote add 标识名(master) 远程地址 | 本地关联远程仓库 |
git push 标识名 master | 将本地仓库内容上传到远程仓库 |
git pull 标识名 master | 从远程仓库下载内容到本地仓库 |
git clone 远程地址 | 将远程仓库复制到本地,并自动形成一个本地仓库 |

九、Idea关联Git
9.1 关联Git
此处关联是Idea可以自动完成的 |
---|
 |
9.2 创建仓库
# 所有class,后缀的文件
*.class
# 所有jar后缀的文件
*.jar
*.iml
*.war
# .idea文件夹
.idea
# out文件夹
out
target
创建仓库前,先添加忽略文件 |
---|
 |
将项目目录初始化为一个仓库 |
---|
 |
 |
9.3 提交-commit
选择提交菜单 |
---|
 |
选择提交文件,定义提交信息 |
---|
 |
之后会有些友好提示,可以忽略,点击“commit” 即可 |
---|
 |
9.4 创建分支-branch
点击右下角链接,即可 |
---|
 |
新建分支 |
---|
 |
查看当前分支 |
---|
 |
在其他分支修改并push到远程 |
---|
  |
9.5 上传到远程仓库(push)
选择push 菜单 |
---|
 |
定义远程仓库地址 |
---|
 |
执行,push操作 |
---|
 |
push成功后 ,弹窗提示 |
---|
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jOSBFQc4-1686983091893)(Git.assets/idea-push5.jpg)] |
9.6 复制到本地仓库(clone)
点击克隆菜单 |
---|
 |
输入如远程仓库地址 |
---|
 |
打开项目 |
---|
 |
打开项目,选项 |
---|
 |
9.7 更新本地项目
选择pull菜单 |
---|
 |
执行 pull操作 |
---|
 |
更新日志显示 |
---|
 |
9.8 冲突解决
冲突出现,弹窗中可以选择如下 |
---|
 |
也可以直接修改冲突文件,然后commit即可 |
---|
 |
9.9 撤销修改
9.9.1 未commit时
9.9.2 已commit时

选中要退回到的提交点,右键拷贝版本id

然后关闭窗口,重新操作git–> reset HEAD

ps: reset type 与版本回退章节中命令意思一致
9.10 stash
1)在B分支上执行stash,B分支的代码会恢复到修改前状态

2)切换到A分支,修改代码并提交
3)切回到B分支,恢复之前的代码,继续开发


十、多人协同开发
10.1 项目管理员( 项目经理 )
点击添加成员 |
---|
 |
被邀请成员接受 |
---|
 |
查看已添加的开发成员 |
---|
 |
进入分支设置 |
---|
 |
设置保护分支,让master分支不能被随更改 |
---|
 |
10.2 开发人员
10.3 实战
十一、经典问题
使用https协议报错 |
---|
 |
删除之前的码云凭证,然后重新push即可 |
---|
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OzxXOQdh-1686983091897)(C:/Users/qiush/AppData/Roaming/Typora/typora-user-images/image-20230614181741714.png)] |
十二、TortoiseGit
是一个开放的git版本控制系统的源客户端。不同的是:git是命令行操作模式,TortoiseGit界面化操作模式,不用记git相关命令就可以直接操作
12.1 安装
双击
安装,下一步下一步即可
12.2 汉化
双击
即可.
然后在任意一个空文件夹[右键],找到TortoiseGit–>Settings


此时再右键即可发现变成中文的了.
12.3 使用
演示 克隆,添加,删除,推送,拉取即可
|
|
|
删除之前的码云凭证,然后重新push即可 |
---|
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FDrCXgxb-1686983091898)(C:/Users/qiush/AppData/Roaming/Typora/typora-user-images/image-20230614181741714.png)] |
十二、TortoiseGit
是一个开放的git版本控制系统的源客户端。不同的是:git是命令行操作模式,TortoiseGit界面化操作模式,不用记git相关命令就可以直接操作
12.1 安装
双击[外链图片转存中…(img-f6dSACCI-1686983091414)]
安装,下一步下一步即可
12.2 汉化
双击[外链图片转存中…(img-T3cxmPNp-1686983091415)]
即可.
然后在任意一个空文件夹[右键],找到TortoiseGit–>Settings
[外链图片转存中…(img-07JUwnLG-1686983091415)]
[外链图片转存中…(img-7jmvMtiK-1686983091415)]
此时再右键即可发现变成中文的了.
12.3 使用
演示 克隆,添加,删除,推送,拉取即可