Git TortoiseGit 详细安装使用教程

news2024/11/15 9:48:31

前言

  • Git 是一个免费的开源分布式版本控制系统,是用来保存工程源代码历史状态的命令行工具,旨在处理从小型到非常大型的项目,速度快、效率高。《请查阅Git详细说明》。
  • TortoiseGit 是 Git 的 Windows Shell 界面工具,基于 TortoiseSVN。它是开源的,可以完全使用免费提供的软件构建。提供的支持,例如提交、显示日志、区分两个版本、创建分支和标签、创建补丁等。《请查阅TortoiseGit详细说明》。
  • TortoiseGit 必须依赖 Git 的环境配置运行,所以在安装 TortoiseGit 前,要先安装 Git 工具。 

一、Git 安装使用教程 

1.1 下载 Git 客户端

以 Windows 64 位系统为例,进行安装使用说明。

Git官网下载地址:Git Downloads

1.2 安装 Git 客户端 

目前最新版本为 "Git-2.44.0-64-bit_2.exe",直接双击运行 。

  

  • 进入安装导向界面,点击 <Next> 

  • 选择安装路径,然后点击 <Next> 

  • 接下来按照默认配置,一值点击 <Next> 即可  

  • 最后安装时,点击 <Install> 

  

  • 安装完成,点击 <Finish>

*注:如果不想看发行说明,在点击 <Finish> 前,先把 "View Release Notes" 的勾去掉。

1.3 验证 Git 客户端是否安装成功 

  • 在任意文件夹下点击右键,出现 "Git Bash here" 快捷键表示安装成功 
  • 输入 "git --version" 查看版本信息

1.4 使用 Git 客户端创建 SSH 密钥

  • 查看 SSH 公钥的方法:在任意文件夹下点击右键,选择 Git GUI here。弹出的界面如下:

  • 点击主菜单的【Help】→【Show SSH Key】  

*注:如果没有 SSH 密钥,界面内容是空白的。 

  • 点击 "Generate Key" 生成 SSH 密钥(如果设置密码为空,直接点击OK即可) 
  • 点击 "Copy To Clibboard",把 SSH 的公钥粘贴到 Git 服务器的配置中【具体参考: 2.4.2

  

SSH 密钥说明: 

1. 点击 "Copy To Clibboard" 是把 SSH 公钥复制到粘贴板;

2. 通过 Git 生成的密钥一般都存在 C:\Users\XX\.ssh 目录下(其中 XX 是表示电脑账户)。

1.5 Git 拉取远程服务器源码 

为了验证 Git 客户端可用,在 github 上随便拉取一份经典的开源代码,成功下载中...

二、TortoiseGit 安装使用教程 

2.1  TortoiseGit 客户端与语言包下载

以 Windows 64 位系统为例,进行安装使用说明。 

 TortoiseGit官网下载地址:Download TortoiseGit

*注:目前最新稳定版本为 2.15.0.0。如果大家不习惯使用英文版本,可以下载中文语言包安装。

2.2 TortoiseGit 客户端与语言包安装 

安装顺序特别说明: 

1. 先安装 TortoiseGit 客户端;

2. 再安装语言包;

*注意:

  • TortoiseGit 客户端安装到首次出现导向界面时,会有语言的选项;
  • 此时,可先把中文语言包安装完成,再点击 TortoiseGit 刷新按钮,然后选择中文简体即可。

2.2.1 TortoiseGit 客户端安装

  • 直接双击运行,然后点击 <Next> 默认安装

*注:如果不想安装到C盘,可自行选择安装路径

  • 剩下的安装流程,一直点击 <Next> 默认安装即可
  • 安装到导向界面时,先不要点击"下一页"
  • 可以先跳到 步骤【2.2.3】完成语言包安装后,再回来接着操作

  • 此时,假设你已跳到 步骤【2.2.3】完成了语言包安装
  • 接着点击刷新按钮,选择中文简体

  • 点击 <下一页>,系统会自动选择 git.exe 运行环境,默认即可 

  • 安装过程中,需要填写个人 git 账号和邮箱 

2.2.2 使用 PuTTYgen 创建 SSH 密钥 

  • 如果你之前没有按照【1.4】步骤使用 Git 客户端创建 SSH 密钥
  • 在此,还可以通过 TortoiseGit 自带的 PuTTYgen 工具创建 SSH 密钥
  • 点击 "Generate PuTTY key pair" 创建 SSH 密钥

 

  • 点击 "Save private key" 保存 SSH 私有密钥(要记住保存路径!!!
  • Public Key 复制粘贴到 Git 服务器上,配置 SSH Key【具体参考: 2.4.2

 

注:我选择在 Documents 下创建一个 ssh 目录来存放 SSH 密钥对(私钥和公钥)。 

2.2.3 安装中文语言包 

  • 直接双击运行,一直默认安装即可

2.2.4 查看 TortoiseGit 汉化情况

  • 完成 步骤【2.2.1】和【2.2.3】安装后,在任意文件夹点击右键,可以看到 TortoiseGit 已成功汉化

2.3 TortoiseGit 常规配置 

如果你在上述的安装过程,不小心错过了一些关键步骤,也不必惊慌,在此将会重新介绍。

2.3.1 TortoiseGit 菜单配置

  • 在本地创建一个空目录 (例如 Test),建议: 路径中不要包含中文
  • 在空白处点击右键, 选择  TortoiseGit --> Settings

 

  • 在空白处重新点击右键,可以看到弹出菜单已经汉化成功 

  • 从上图可以看到 "Git 克隆" 字样会显示在右键菜单里
  • 点击 “设置” -- "右键菜单",把复选框的默认勾选都去掉,让右键菜单保持干净。

 

2.3.2 TortoiseGit 客户端 Git 配置

以下内容将会介绍,如何解决每次拉取或提交代码时,免除输入用户名及密码的操作。 

  • 每次通过 TortoiseGit 拉取或提交代码, 默认会要求输入用户名和密码

2.3.2.1 方法一:永久免除输入用户名和密码
  • 在任意文件夹点击右键,选择 "TortoiseGit" -- "设置" -- "Git"
  • 先填写自己远程服务器的用户名及邮件,然后点击 "应用"

  • 再点击 "编辑全局.git/config(O)"
  • 打开全局配置文件,并且添加如下内容
[user]
	name = test
	email = test@example.com
    signingkey = admin
[credential]
    helper = store

添加的内容说明:

  • name:服务器用户名称(例如 test)
  • signingkey:服务器用户密码(例如 admin)
  • Email:提供给别人联系的邮箱
  • helper = store:永久记住服务器的用户名和密码(这个配置是免密的关键
2.3.2.2 方法二:只对指定仓库免除输入用户名和密码 
  • 在一个已经拉取远程服务器项目代码的目录里 (例如 Test),只对当前项目仓库免密操作
  • 在当前目录点击右键,选择 "TortoiseGit" -- "设置" -- "Git" -- "编辑本地.git/config(L)"

  • 在打开的文件里,添加如下内容
  • 保存后,以后在这个仓库下拉取或提交代码,就不用重复验证了,因为小乌龟已经记录下了当前仓库的用户和密码。

[credential]
  helper = store

2.4 TortoiseGit 秘钥配置

2.4.1 SSH 密钥创建 

  • 关于 SSH 密钥创建方法,我已经在【1.4】和【2.2.2】小节都已经说过了
  • 这两种方法,任意选择其中一种方法创建即可
  • 如果你错过了【2.2.2】的创建方法,并且还想用 PuTTY 来创建 SSH 密钥
  • 那么可点击电脑 "开始" --> "PuTTYgen",进入 PuTTY Key Generator 
  • 具体操作方法请参考:步骤【2.2.2】

2.4.2 将 SSH 公钥填写到 Git 服务器配置

这里以 GitBlit 服务器为例:

  • 方法一:参考步骤【1.4】,点击 "Copy To Clibboard",把 SSH 的公钥粘贴 GitBlit 服务器对应用户的后台配置中
  • 方法二:参考步骤【2.2.2】,在 "PuTTY Key Generator" 界面,将 Public Key 复制粘贴GitBlit 服务器对应用户的后台配置中
  • 以上方法,任选一种即可

  • 如果你选择了方法二,将 Public Key 粘贴到 Git 服务器配置里
  • 那么点击打开 "开始" --> "Pageant"
  • 添加前面 步骤【2.2.2】生成的 SSH 私钥 ssh-rsa.ppk。然后关闭

 

Pageant 添加 SSH 私钥的说明:

  • 远程服务器已经添加了 SSH 公钥
  • 使用 TortoiseGit 客户端向服务器拉取或提交代码时,Pageant 必须启动且添加了对应的私钥。否则会报错!!!

三、TortoiseGit 客户端与服务器交互

3.1 克隆或拉取远程服务器代码 

  • 新建 Test 目录,然后点击右键 --> "TortoiseGit" --> "克隆"
  • 输入远程服务器URL,选择 Putty 密钥 (即 SSH 私钥)
  • 点击确定,开始拉取服务器版本库代码

 

3.2 本地仓库提交代码到远程服务器

  • 新增文件
  • 修改文件内容 
  • 描述提交日志信息
  • 将代码或新增文件,提交到远程服务器
  • 点击推送(到远程服务器)
  • 最后点击 "确定" 即可

 

四、Git 服务器安装使用教程 

  • 如果公司或个人想在 Windows 环境下搭建私有的 Git 服务器
  • 那么,这个开源的 GitBlit 是一个不错的选择
  • 详细教程请查阅《Windows搭建GitBlit服务器详细教程》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1622252.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis入门(入门案例,IDEA配置SQL提示,JDBC介绍,lombok介绍)

目录 一、Mybatis入门案例介绍整体步骤创建SpringBoot项目pom依赖准备测试数据新建实体类配置Mybatis数据库连接信息新建接口类,编写SQL代码单元测试 二、IDEA配置SQL提示三、JDBC是什么案例JDBC和Mybatis对比 四、数据库连接池介绍如何实现一个数据库连接池切换数据库连接池 五…

【SpringCloud】LoadBalance负载均衡服务调用快速入门

【SpringCloud】LoadBalance负载均衡服务调用快速入门 文章目录 【SpringCloud】LoadBalance负载均衡服务调用快速入门1. 概述2. 引入依赖3. 配置、验证3.1 配置3.2 验证 1. 概述 官网地址&#xff1a;点击跳转 Spring Cloud LoadBalancer 是由 SpringCloud 官方提供的一个开…

自动化测试用例设计

知人者智&#xff0c;自知者明。大家好&#xff0c;给大家分享一下关于自动化测试用例的设计心得&#xff0c;首先完整的熟悉业务是第一步要做的&#xff0c;不熟悉业务的前提下不会设计出高效且合理的用例&#xff0c;其次是我们要有明确的测试目标&#xff0c;确保我们写的每…

CentOS 7.9.2009 中 Docker 使用 GPU

一、安装nvidia驱动 1.1&#xff0c;查看显卡驱动 # 查看显卡型号 lspci | grep -i nvidia 1.2&#xff0c;进入 PCI devices &#xff0c;输入上一步查询到的 2204 1.3&#xff0c;进入 官方驱动 | NVIDIA&#xff0c;查询 Geforce RTX 3090 驱动并下载 1.4&#xff0c;禁用…

Redis入门到通关之数据结构解析-QuickList

文章目录 ☃️前提概要☃️ 配置项相关☃️简要源码☃️总结 欢迎来到 请回答1024 的博客 &#x1f353;&#x1f353;&#x1f353;欢迎来到 请回答1024的博客 关于博主&#xff1a; 我是 请回答1024&#xff0c;一个追求数学与计算的边界、时间与空间的平衡&#xff0c;0与1…

第十五届蓝桥杯省赛第二场C/C++B组A题【进制】题解(AC)

解题思路 按照题意进行模拟&#xff0c;计算 x x x 的 b b b 进制过程中&#xff0c;若出现余数大于 9 9 9&#xff0c;则说明 x x x 的 b b b 进制一定要用字母进行表示。 #include <iostream> #include <cstring> #include <algorithm> #include &l…

探索UWB模块的潜力:智能家居与物联网的连接者

UWB模块具有精准定位、快速响应、低能耗等特点&#xff0c;在智能家居领域展现出了巨大的潜力&#xff0c;正逐渐成为智能家居与物联网的重要连接者。本文将探讨UWB模块在智能家居与物联网中的关键作用、应用场景以及未来发展趋势&#xff0c;旨在为推动智能家居技术的创新和发…

基于Springboot的租房网站

基于SpringbootVue的租房网站的设计与实现 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringbootMybatis工具&#xff1a;IDEA、Maven、Navicat 系统展示 用户登录 首页 房屋信息 交流论坛 房屋资讯 后台登录 用户管理 房屋类型管理 房屋信息管理 预…

2、选择什么样的机器人本体

如果说世界是物质的&#xff0c;那么应该先制造出机器人的本体&#xff0c;再让她产生灵魂。如果是精神的呢&#xff0c;世界是无中生有的呢&#xff0c;那就先在仿真中研究算法吧。 而我比较崇尚初中哲学的一句话&#xff0c;世界是物质的&#xff0c;物质是运动的&am…

25考研数学可以全程跟张宇吗?

先说结论&#xff1a;25可以全程跟张宇。除了这三种情况。 总的来说&#xff0c;张宇的知识点是全的&#xff0c;不需要担心漏知识点、漏经典方法。不单高数&#xff0c;线代概率也是这样。 但是&#xff0c;老师讲得好&#xff0c;不能保证你上岸。 如果遇到这三种情况&…

【计算机网络】网络模型

OSI七层网络模型 七层模型如图所示 每层的概念和功能 物理层 职责&#xff1a;将数据以比特为单位&#xff0c;通过不同的传输介质将数据传输出去。 主要协议&#xff1a;物理媒介相关的协议&#xff0c;如RS232&#xff0c;V.35&#xff0c;以太网等。 数据链路层 职责&…

登录vcenter,提示no healthy upstream

当登录vCenter时收到“no healthy upstream”错误提示时&#xff0c;这通常意味着vCenter Server无法与它的某些关键组件或依赖的服务建立有效的连接。这个错误表明vCenter系统的某个上游组件&#xff08;例如内部服务、数据库、网络资源或其他依赖项&#xff09;未能达到正常工…

ardupilot开发 --- Jetson Orin Nano 篇

多情应笑我早生华发 0. 一些概念1. 系统安装&#xff08;刷机、flash&#xff09;1.1 使用SD卡安装系统1.2 使用固态硬盘安装系统 0. 一些概念 官网&#xff1a;https://www.nvidia.com/en-us/ Developers Documentation Getting Started Jetson Developer Kits User Guid…

STM32 HAL库F103系列之DAC实验(二)

DAC输出正弦波实验 实验简要 1&#xff0c;功能描述 通过DAC1通道1(PA4)输出正弦波&#xff0c;然后通过DS100示波器查看波形 2&#xff0c;使用定时器7 TRGO事件触发转换 TEN1位置1、TSEL1[2:0]010 3&#xff0c;关闭输出缓冲 BOFF1位置1 4&#xff0c;使用DMA模式 DMAE…

DDR3简介

文章目录 前言一、ddr_stress_tester_v2.90配置流程二、将inc配置文件下载到板子上1.连接方式2.打开DDR_Tester 软件 uboot中DDR初始化的修改 前言 &#x1f4a6;DDR3在自己做完板子后需要验证下&#xff0c;测试DDR3是否能正常使用&#xff0c;如果不能正常使用&#xff0c;其…

测试实战哦

软件测试 测试用例&#xff1a;为了特定的目的而设计的一组测试输入&#xff0c;执行条件和预期结果的文档 用例ID&#xff0c;用例标题&#xff0c;测试项目&#xff0c;用例级别&#xff0c;预置条件&#xff0c;输入数据&#xff0c;执行步骤&#xff0c;预期结果 软件开发…

【项目经理沟通之道】项目管理必会的思维分析工具 07

作项目管理&#xff0c;除多沟通同步外&#xff0c;关键核心点&#xff0c;要学会诱导相关人&#xff0c;参与进来&#xff0c;真正认为自己是项目一份子&#xff0c;才能心往一处想&#xff0c;劲往一处使&#xff0c;团结一心才能干大事。 人性永远都是只对自己有益事情感兴…

游戏工作室为什么要使用海外住宅IP防封?

当谈到游戏工作室时&#xff0c;它们通常以多开游戏账号来获取收益为主要目标。这种商业模式在游戏产业中已经成为一个独特而且颇具潜力的领域。然而&#xff0c;随之而来的是防封问题&#xff0c;特别是当游戏工作室试图通过多开账号来赚取更多收益时。因此&#xff0c;我们有…

短视频账号矩阵系统==技术源头开发

短视频账号矩阵系统技术源头开发 一、短视频矩阵功能构建&#xff1a; 1. 关键词批量比距生成&#xff08;区域词行业词产品词&#xff09; 2. 多平台多账号一站式运营管理 3. 视频内容批量复制生成 4. 视频内容批量多平台投放 5. 视频数据分析及粉丝画像分布统计 6. 智能…

mongodb 分片集群认证

增加认证 副本间认证外部使用认证 如果是开启状态,先关闭路由,再关闭配置服务,最后关闭分片数据复本集中的每个mongod&#xff0c;从次节点开始。直到副本集的所 有成员都离线&#xff0c;包括任何仲裁者。主节点必须是最后一个成员关闭以避免潜在的回滚.最好通过 db.shutdow…