目录
1、TortoiseGit(小乌龟)配置SSH
1.1、右击打开Git命令窗口
1.2、设置Git的全局name和email
1.3、查看是全局名字和邮箱是否设置成功
1.4、生成 sshkey秘钥
2、TortoiseGit(小乌龟)的使用
2.1、创建本地仓库
2.2、添加文件并提交
2.3、管理修改
2.3.1、差异对比
2.3.2、提交修改
2.3.3、查看提交日志
编辑 2.3.4、版本回退
2.3.5、撤销修改
2.4、访问远程仓库
2.4.1、设置tortoise的SSH
2.4.2、关联远程仓库
2.4.3、推送本地仓库
2.4.4、从远程仓库拉取
2.5、分支管理
2.5.1、创建分支
2.5.2、切换分支
2.5.3、合并分支
2.5.4、解决冲突
预装软件git(Windows版)和TortoiseGit(小乌龟)
设置全局属性
(在我们执行git pull等一些操作的时候,会提示你它不知道你是谁,你就需要配置name和email.)
git config --global user.name "xx"
git config --global user.email "[email protected]"
注意:这里的
[email protected]
只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱可以qq,可以网易。现网的大部分教程均讲解的使用邮箱生成,其一开始的初衷仅仅是为了便于辨识所以使用了邮箱。
git config --list(查看配置的信息)
1、查看是否已经有了ssh秘钥:cd ~/.ssh 一般都是C:\Users\shlc4\.ssh 里面有两个文件一个是公钥文件id_rsa.pub 一个密钥文件id_rsa
如果有这个文件会无法生成新的秘钥需要提前删掉或备份,第一次安装是没有的,不用管
输入命令如图提示说明没有这个路径则进行下面操作
2、生成密钥:
2.1生成公钥
ssh-keygen -t rsa
按照提示完成三次回车,即可生成 ssh key(如图所示)。生成了了id_rsa和id_rsa.pub
3、查看id_rsa.pub公钥
cat ~/.ssh/id_rsa.pub
4、复制选中内容添加到Gitee上 点击个人头像 「设置」->「安全设置」->「SSH公钥」 ,添加生成的 public key 添加到仓库中。(将id_rsa_pub公钥配置到gitee)
5、生成known_hosts文件(三个文件缺一不可)
添加后,在Git命令窗口中继续输入
ssh -T [email protected]
四、最重要的一步找到 ssh.exe,否则的话会报各种各样的错误,有权限不足,有让你输入git账户密码的,因为小乌龟和git有一定冲突默认路径是C:\Program Files\TortoiseGit\bin\sshaskpass.exe需要改成C:\Program Files\Git\usr\bin\ssh.exe
应用确定一下就可以了,后面就可以使用ssh方式从gitee仓库克隆拉取代码
我们新建一个空的文件夹:
然后进入tortoise目录,右键操作:
弹出提示,不要勾选:
查看目录,发现生成.git文件夹:
创建新的文件:
编写内容:
在文件夹中右键操作:
提示:这一步等同于我们的 git add readme.txt
此时直接点击提交,即可完成:git commit 操作:
提示:
修改readme.txt:
右键操作:
直接在文件上选择右键,提交即可:
选中文件,右键菜单中,选中查看日志:
提交的日志信息:
现在我们再次修改readme.txt,并且提交
查看日志:
假如我们要回到上一个版本,也就是第2次提交。
我们选中第2次提交,然后右键,选中:重置“master”到这个版本
弹出菜单,这里选中Hard模式,然后确定:
再次查看日志,只剩下第1和第2次提交了。并且HEAD已经设置到了第2次提交位置
文件也回滚了:
如果我现在后悔了,想再次回到第3次提交怎么办?现在连日志都没有了!
此时,在空白处点击右键,选中 显示引用记录:
弹出所有操作的日志信息:
现在,我们找到第3次提交,右键,选中:重置“master”到这个版本
文件内容回来了:
我们现在修改文件:
现在后悔了,想要还原到修改以前。
我们可以选中文件,右键。然后选中菜单:还原。
点击确定:
还原成功:
查看文件:
由于安装时,我们并没有设定SSH信息,因此默认tortoise默认使用的ssh工具是“PuTTY”。
然而,git Bash使用的ssh工具是“openSSH”,如果想让TortoiseGit也使用刚才生成的密钥可以做如下配置:
找到git安装目录下的ssh.exe文件:
这里的四个选项:
在空白处点右键,选择 “Git同步”:
弹出菜单中,选择将master推送到远程仓库的master:
成功:
现在,我们先在远程仓库修改数据:
然后在本地的tortise文件夹点击右键,菜单中选择:拉取:
成功:
查看文件:
在文件夹的空白处点击右键。选择创建分支:
填写分支名称和说明
查看日志,发现已经有了dev分支:
在空白处选择右键,菜单中选择: 切换/检出
选择要切换的分支
在dev分支中。修改readme文件
提交修改。
然后切换到master:
查看文件内容,发现并没有变化,因为刚才的修改是在dev完成的。master没有影响。
空白处点击右键,选择合并菜单
选择将dev合并当当前分支:
成功:
查看内容:
切换到dev,然后进行修改
提交数据。
切换到master,修改readme:
然后提交修改
尝试用master合并dev:
结果失败了,因为有冲突:
查看文件:
手动解决:根据需求去处理。这里我们假设两者都保留:
标记为解决:
解决完成,直接提交:
提示信息:
查看日志: