一、软件安装
1.1 下载地址
Download – TortoiseGit – Windows Shell Interface to Git
1.2 汉化包下载
根据提示进入 Download – TortoiseGit – Windows Shell Interface to Git
下载指定语言包后安装
刷新后即可查看到下载语言包
1.3 身份验证
选择 OpenSSH
安装成功后右键菜单就会多出三行选项
二、基础操作
2.1 仓库创建
点击要导入Git仓库的文件夹,右键选择创建版本库
执行完毕后会在该目录下创建.git文件
2.2 修改提交
这里新增
了一个文件tst.txt,右键选择提交
勾选修改的文件后,填写日志信息,提交
提交完成后文件图标变为绿钩
演示如下:
2.2 日志查看
2.3 项目克隆
2.3.1 HTTPS
2.3.2 SSH
-
ssh是一种开源非对称加密通信协议
-
ssh只是一种协议, 有开源实现也有商业实现, git默认使用开源实现 的openssh
-
ssh通信需要一对密钥(公和私一对),私钥留在自己电脑上,公钥给其他的电脑
-
使用 GitGUI 生成密钥,并把公钥放在服务器上
-
安装完第一次克隆会请求是否允许使用ssh,需要我们输入一个"yes"
2.3.2.1 GitGUI 生成密钥
若要重新生成钥匙,删除id_rsa
(私钥) 和 id_rsa.pub
(公钥)后 ,再次生成即可
2.3.2.2 Gitee 设置公钥
添加公钥需要输入密码,为gitee登录时密码
2.3.2.3 克隆演示
SSH 克隆流程与HHTPS基本一致,只是链接改为以git开头
2.4 文件添加
2.5 项目拉取
2.6 分支
2.6.1 创建分支
2.6.2 切换分支
2.6.2.1 根据 切换/检出
2.6.2.2 根据 版本分支图
右键图形,选择切换分支
2.6.3 提交分支
此时 版本分支图 如下:
2.6.4 合并分支
切换到 master 主支
选择要合并的分支dev后,点击确定按钮
合并后可以看到master和dev已经同步
2.6.5 解决冲突
假设当前 master
和 dev
都对文件 newFun.txt
进行了修改,并都已提交
此时若在 master 上对 dev 进行合并,将会出现如下错误:
关闭窗口后,冲突的文件将会以感叹号
的形式展示,文件的内容也将会展示冲突详情
修改冲突文件后,再次提交,右键
点击冲突文件选择解决
再查看日志,冲突就已解决
2.7 忽略
创建.gitignore
文件,内容为要忽略的文件或文件夹
注意:空文件夹
会被自动忽略
掉
2.7.1 忽略文件
假设要忽略以mp3结尾的文件
2.7.2 忽略文件夹
假设要忽略所有名为temp的文件夹
若在其他文件夹中也包含名为temp的文件夹,而不想忽略
修改为 /temp/
即可
提交后可以看到,temp 被忽略,而 a 文件夹下的 temp 没有被忽略
2.7.3 取消忽略
若在a目录下有 music.mp3 , 并不想被忽略,可以在使用!
反忽略
提交后可以看到 mp3 文件成功上传
2.8 版本回退
在显示日志窗口(2.2) , 右键指定版本,选择重置到此版本
相关概念:
Head 当前分支的引用指针(重置就是移动Head这个指针)
Index 就是缓存区(被Add的,也可以说是将要提交的,文件的快照)
工作区 .git所在的目录以及子目录
重置类型:
版本标签:
使用硬重置
后,将会丢弃本地变更,如新增文件后提交,想使用硬重置
回退到上个版本
刷新页面后上条版本信息被移除
此时若不想移除版本信息,可为指定版本打上标签
右键
指定版本,选择创建标签
添加后显示如下:
若要删除,选择删除即可:
现在若要硬重置
到前两个版本,其中一个版本打了标签
硬重置后
版本图如下:
可以通过标签
返回到删除的版本