0
点赞
收藏
分享

微信扫一扫

【Git】TortoiseGit(小乌龟)配置SSH和使用


目录

 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、解决冲突

 1、TortoiseGit(小乌龟)配置SSH

Gitee 提供了基于SSH协议的Git服务,在使用SSH协议访问仓库之前,需要先配置好账户/仓库的SSH公钥。(有HTTPS协议和SSH协议 SSH协议好像更安全)

预装软件git(Windows版)和TortoiseGit(小乌龟)

设置全局属性

1.1、右击打开Git命令窗口

【Git】TortoiseGit(小乌龟)配置SSH和使用_git

1.2、设置Git的全局name和email

(在我们执行git pull等一些操作的时候,会提示你它不知道你是谁,你就需要配置name和email.)

git config --global user.name "xx"      
git config --global user.email "xx@163.com"

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_02

注意:这里的 xxxxx@xxxxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱可以qq,可以网易。现网的大部分教程均讲解的使用邮箱生成,其一开始的初衷仅仅是为了便于辨识所以使用了邮箱。 

1.3、查看是全局名字和邮箱是否设置成功

git config --list(查看配置的信息)

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_03

1.4、生成 sshkey秘钥

1、查看是否已经有了ssh秘钥:cd ~/.ssh  一般都是C:\Users\shlc4\.ssh 里面有两个文件一个是公钥文件id_rsa.pub 一个密钥文件id_rsa

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_04

如果有这个文件会无法生成新的秘钥需要提前删掉或备份,第一次安装是没有的,不用管

输入命令如图提示说明没有这个路径则进行下面操作 

2、生成密钥:

2.1生成公钥

ssh-keygen -t rsa

按照提示完成三次回车,即可生成 ssh key(如图所示)。生成了了id_rsa和id_rsa.pub

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_05

3、查看id_rsa.pub公钥

cat ~/.ssh/id_rsa.pub

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_06

4、复制选中内容添加到Gitee上 点击个人头像 「设置」->「安全设置」->「SSH公钥」 ,添加生成的 public key 添加到仓库中。(将id_rsa_pub公钥配置到gitee) 

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_07

5、生成known_hosts文件(三个文件缺一不可)

添加后,在Git命令窗口中继续输入

ssh -T git@gitee.com

 

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_08

四、最重要的一步找到 ssh.exe,否则的话会报各种各样的错误,有权限不足,有让你输入git账户密码的,因为小乌龟和git有一定冲突默认路径是C:\Program Files\TortoiseGit\bin\sshaskpass.exe需要改成C:\Program Files\Git\usr\bin\ssh.exe

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_09

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_10

 应用确定一下就可以了,后面就可以使用ssh方式从gitee仓库克隆拉取代码

2、TortoiseGit(小乌龟)的使用

2.1、创建本地仓库

我们新建一个空的文件夹:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_11

然后进入tortoise目录,右键操作:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_12

 

弹出提示,不要勾选:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_13

 

查看目录,发现生成.git文件夹:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_14

 

2.2、添加文件并提交

创建新的文件:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_15

编写内容:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_16

在文件夹中右键操作:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_17

 提示:这一步等同于我们的 git add readme.txt

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_18

此时直接点击提交,即可完成:git commit 操作:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_19

 

提示:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_20

 

2.3、管理修改 

2.3.1、差异对比

修改readme.txt:

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_21

右键操作:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_22

 结果:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_23

2.3.2、提交修改 

直接在文件上选择右键,提交即可:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_24

2.3.3、查看提交日志

选中文件,右键菜单中,选中查看日志:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_25

提交的日志信息:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_26

 2.3.4、版本回退 

现在我们再次修改readme.txt,并且提交

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_27

查看日志:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_28

 

假如我们要回到上一个版本,也就是第2次提交。

我们选中第2次提交,然后右键,选中:重置“master”到这个版本

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_29

弹出菜单,这里选中Hard模式,然后确定:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_30

 

再次查看日志,只剩下第1和第2次提交了。并且HEAD已经设置到了第2次提交位置

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_31

文件也回滚了: 

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_32

如果我现在后悔了,想再次回到第3次提交怎么办?现在连日志都没有了!

此时,在空白处点击右键,选中 显示引用记录

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_33

弹出所有操作的日志信息:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_34

 

现在,我们找到第3次提交,右键,选中:重置“master”到这个版本

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_35

 结果,第3次提交又回来了!

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_36

文件内容回来了:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_37

 

2.3.5、撤销修改 

我们现在修改文件:

 

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_38

现在后悔了,想要还原到修改以前。

我们可以选中文件,右键。然后选中菜单:还原。

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_39

点击确定:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_40

 

还原成功:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_41

查看文件: 

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_42

2.4、访问远程仓库

2.4.1、设置tortoise的SSH

由于安装时,我们并没有设定SSH信息,因此默认tortoise默认使用的ssh工具是“PuTTY”。

然而,git Bash使用的ssh工具是“openSSH”,如果想让TortoiseGit也使用刚才生成的密钥可以做如下配置:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_43

找到git安装目录下的ssh.exe文件:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_44

 

2.4.2、关联远程仓库 

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_45

这里的四个选项:

  1. 远端仓库名称,一般交origin
  2. URL:远程仓库地址
  3. 推送URL:同上
  4. Putty密钥:我们用git bash 生成的私钥。

2.4.3、推送本地仓库

 在空白处点右键,选择 “Git同步”:

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_46

弹出菜单中,选择将master推送到远程仓库的master:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_47

 

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_48

成功:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_49

 私服中也显示了最新的信息:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_50

2.4.4、从远程仓库拉取 

现在,我们先在远程仓库修改数据:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_51

然后在本地的tortise文件夹点击右键,菜单中选择:拉取:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_52

 

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_53

 

成功:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_54

 

查看文件:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_55

 

2.5、分支管理 

2.5.1、创建分支

在文件夹的空白处点击右键。选择创建分支:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_56

填写分支名称和说明

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_57

查看日志,发现已经有了dev分支:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_58

 

2.5.2、切换分支

在空白处选择右键,菜单中选择: 切换/检出

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_59

选择要切换的分支

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_60

 

在dev分支中。修改readme文件

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_61

提交修改。

然后切换到master:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_62

查看文件内容,发现并没有变化,因为刚才的修改是在dev完成的。master没有影响。

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_63

2.5.3、合并分支

空白处点击右键,选择合并菜单

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_64

选择将dev合并当当前分支:

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_65

 

成功:

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_66

 

查看内容:

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_67

 

2.5.4、解决冲突

切换到dev,然后进行修改

【Git】TortoiseGit(小乌龟)配置SSH和使用_github_68

提交数据。

切换到master,修改readme:

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_69

 

然后提交修改

尝试用master合并dev:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_70

结果失败了,因为有冲突:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_71

 

查看文件:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_72

 

手动解决:根据需求去处理。这里我们假设两者都保留:

【Git】TortoiseGit(小乌龟)配置SSH和使用_git_73

 

标记为解决:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_74

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_75

解决完成,直接提交: 

【Git】TortoiseGit(小乌龟)配置SSH和使用_右键_76

提示信息:

【Git】TortoiseGit(小乌龟)配置SSH和使用_java_77

 

查看日志:

【Git】TortoiseGit(小乌龟)配置SSH和使用_ssh_78

举报

相关推荐

0 条评论