1、环境安装

TortoiseGit,Git客户端,32/64位最新版及对应的语言包下载地址:https://tortoisegit.org/download/

安装的方法,一直下一步就行,具体做法省略。

2、配置

1、首先,请选定一个存放Git项目的目录,这样管理方便. 如: D:\test , 然后在资源管理器中打开。

2、在空白处点击鼠标右键,可以看到右键菜单中多了几个选项。选择 --> TortoiseGit --> Settings,然后就可以看到配置界面。

3、点击General进行简单配置。Language可以切换语言(楼主比较习惯英文)。不勾选自动升级的复选框。可能还需要指定 Git.exe 文件的路径,  如"D:\DevlopPrograms\Git\bin"。完成后,点击应用,确定关闭对话框。如下所示:

4、配置右键菜单.。在设置对话框中,点选左边的"Context Menu",设置常用的右键菜单。楼主比较常用的是如下选项:

5、设置记住密码

!!!密码会明文保存在 C:\Users\Administrator\.git-credentials 这种文件中, 请小心使用.

进入设置, 点选左边的Git标签.可以发现,右边可以配置用户的名字与Email信息. 如下图所示:

因为当前还没有本地项目,所以 “Edit local .git/config(L)” 按钮处于灰色不可用状态,如果在某个本地Git项目下打开配置对话框,那么这个按钮就可用,然后就可以编辑此项目的一些属性。

点击 “Edit global .git/config(O)”按钮,会使用记事本打开全局配置文件,在全局配置文件中,在后面加上下面的内容:

[credential]

helper= store

完成后保存,关闭记事本,确定即可。

当你推送项目到GitHub等在线仓库时,会记住你输入的用户名和密码

3、示例

克隆一个项目(楼主是从github上获取)

在工作目录下,如D:\test,空白处右键,选择: Git clone,则会弹出克隆对话框,如下图所示:

根据项目大小,时间会不一样。克隆完成后,如果没有错误,会给出提示:

进入克隆下的文件夹中,如D:\test\xwj_repo,空白处右键,弹出如下菜单:

其中,Git Pull是从远端拉取最新的代码,Git Fetch是从远端拉取最新的分支,Git Push是将本地仓库的代码提交到远端

Git Commit ->”master”,将本地代码提交到本地版本库(默认的分支是master)。

2. 将本地代码提交到本地仓库

创建一个文件,如test1.txt, 然后提交(commit)到本地版本库(这个操作可以在离线状态操作)

2.1 选择Git Commit ->”master”,弹出下图:

2.2 填写提交备注message(不填写不允许提交),勾选需要提交的文件,点击commit,即可将本地代码提交到本地版本库。

出现如下弹框,表示提交成功

其中,提交时,会发现上图中的Status有几种值:

Unknown:新增的文件,也不在版本库

Added:新增的文件,在版本库

Modified:文件修改,在版本库

Missing:文件被删除,在版本库

3. 查看日志

右键选择Git Show Log(这个菜单可以通过上面的说的配置出来)。在日志中,可以通过日期、文件名、提交人等等过滤查询。

3.1 通过日志,可以很直观的看到提交相关记录。比如提交人、提交时间、提交了哪些文件等等。这些信息便于以后进行文件对比或者版本

回滚(后面将会介绍)点击test1.txt,可以看到本次提交,对test1文件进行了哪些操作:

至于怎么去看这些颜色表示什么意思,可以去百度一下,这里不做介绍

4、 将代码推送(push)到远端。这里是github

右键空白处,选择Git Push,出现如下弹框:

这里可以看到是本地哪个版本库提交到远端。至此,文件的整个提交过程就完成了

5、 分支

发现问题:你代码写了很多,运行OK;但是突然想加个新功能进去,这个功能你也不知道能否正常运行,而且修改过程中,除了新加代码和文件进去,还会修改以前的代码。要是万一失败,修改回来也是一种很麻烦的事情。这种时候很多人就用备份方式。来看看git是怎么优雅的处理这个问题的。

git的处理方式:当你想加一个新功能进去的时候,你可以新建一个分支,例如名字叫newbranch,然后在分支中把新功能加上去,如果OK,将代码合并到master分支上,如果新功能失败,切换回master分支上来,在newbranch写的代码,又全看不到了。

5.1 新建一个分支,右键-->TortoiseGit-->Create Branch

右键,你会发现当前的分支为你新建的newbranch分支了

5.2 接下来,就开心新增你的功能,比如我们在test1.txt文件中新增一行文字,同时新增一个文件test2.txt

5.3 提交我们的代码到newbranch分支的本地仓库,参考之前的2.2

5.4 突然发现该功能有漏洞,想回到之前的master分支,怎么办呢?

右键-->TortoiseGit-->Switch/Checkout,选择master即可。如下图:

5.5 空白处右键,会发现已经切换到master分支了。此时发现test2.txt并没有带过来,再来看看test1.txt文件是否回到了从前呢?

结果显示,无论是修改还是添加,都没有影响master分支上的文件,这就是分支的作用。

6、分支合并

如果此时发现newbranch分支上的功能是有效的,希望能合并到master,又该怎么操作呢?

PS:在合并分支前,一定要确认newbranch分支上的代码全部提交到本地版本库了

右键-->TortoiseGit-->Merge,选择被合并的分支,即newbranch。如下图

6.1 点击Ok按钮,会出现下图弹框。弹框中会列出被合并的文件。如下图所示:

6.2 我们发现test2.txt文件被合并过来了,打开test1文件,发现内容正好是在newbranch分支上修改的内容。

至此,分支合并完成

7、拉取(pull)远端最新的修改内容

此时,我们团队还有另一个成员B,他需要获取我最新修改的内容,该怎么操作呢?

首先B切换到跟我同一分支,然后右键-->Git Pull,点击确认即可,就可将我修改的内容拉取到他的本地版本库

8、版本回滚

8.1先查看日志,确定想回滚到哪个版本(这下知道为啥要填写提交备注了吧)

8.2 比如想回滚到创建test1.txt文件前,则点击该步操作所对应的message之前的那一个日志(add spring demo)

然后右键-->Reset “master” to this…,表示将当前master分支上的文件回滚到这个版本,如下图

8.3 选择之后,弹出如下弹框,在Reset Type下选择你回退的类型(楼主一般选择Hard:Reset working…..),点击Ok即可

会发现,此时test2.txt文件消失了,如下图:

9、解决冲突(略)

tortoisegit如何卸载_Git客户端(TortoiseGit)基本使用详解相关推荐

  1. Android客户端实现注册/登录详解(一)

    前言 我们在开发安卓App时难免要与服务器打交道,尤其是对于用户账号信息的注册与登录更是每个android开发人员必须掌握的技能,本文将对客户端的注册/登录功能的实现进行分析,不到之处还请指出. 在这 ...

  2. windows rsync 服务器端客户端下载安装配置详解,推,拉

    Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次只传输修改过的文件部分.传输数据过程中可 ...

  3. c++ mqtt客户端_MQTT安全性设计详解

    1 前言 MQTT(MQ Telemetry Transport, MQ 遥测传输).它是一种发布/订阅.极其简单和轻量级的消息传递协议,旨在用于受限设备和低带宽,高延迟或不可靠的网络.设计原则是使网 ...

  4. 基于Confluent.Kafka实现的Kafka客户端操作类使用详解

    一.引言 有段时间没有写东西了,当然不是没得写,还有MongoDB的系列没有写完呢,那个系列还要继续.今天正好是周末,有点时间,来写新东西吧.最近公司用了Kafka做为消息的中间件,最开始写的那个版本 ...

  5. OAuth2.0授权协议与客户端授权码模式详解

    本文来重点讲解下OAuth2.0授权协议与客户端授权码模式 文章目录 什么是OAuth协议 交互过程 客户端授权模式 授权码模式 简化模式 密码模式 客户端模式 接入公司内部系统 后台管理系统 前台业 ...

  6. 分布式服务管理框架-Zookeeper客户端zkCli.sh使用详解

    原文链接:http://blog.csdn.net/xyang81/article/details/53053642 https://blog.csdn.net/dandandeshangni/art ...

  7. 达梦数据库--Winodws下DM8客户端安装与功能详解

    系列文章目录 一. 安装前准备 1.1 检查系统信息 1.2 检查内存信息 1.3 检查磁盘空间 二. 数据库安装 2.1选择时区 2.2安装向导: 2.3许可证协议: 2.4验证Key文件: 2.5 ...

  8. Elasticsearch系列(六)----JAVA客户端之Jest操作详解

    Jest示例代码如下: package com.fendo.JestClient;import java.io.IOException; import java.text.SimpleDateForm ...

  9. linux怎么强制解挂,linux下强制卸载挂接点——umount+Fuser命令详解

    fuser -km /soft umount /soft Linux命令Fuser详解 使用文件或者套节字来表示识别进程.我常用的他的两个功能:查看我需要的进程和我要杀死我查到的进程 比如当你想umo ...

最新文章

  1. 用于检测AC电压的无接触电压检测器
  2. 77.SQL 查询方式整理
  3. DataGrid单击行时改变颜色
  4. 判断一个数是不是回文数
  5. 中国在线度假旅游市场专题分析2020
  6. zabbix4.2学习笔记--监控tomcat
  7. [转载] Python format()格式:中文对齐问题
  8. 小蠓虫如何灭_小咬怎么灭
  9. JSP 中 pageEncoding 和 charset 区别以及中文乱码解决方案
  10. Tomcat安装与配置(详细步骤)
  11. 学会IDEA REST Client后,postman就可以丢掉了...
  12. 为什么要采用技术外包
  13. JAVA之翻转棋游戏
  14. 质数乘积 -LintCode
  15. 我的k8s随笔:Kubernetes 1.17.0 部署
  16. iOS中允许后台应用程序刷新在开发中的注意事项
  17. 摄像头(camera)数据传输中 码率/比特率(Bit rate) 与 带宽(Bandwidth)对应表
  18. 华为中央软件院编译器与编程语言实验室人才招募
  19. IDM 下载工具利器 - 经典好用优秀的 Windows 多线程加速下载软件
  20. mysql怎么连接,mysql怎么连接

热门文章

  1. 设计模式之桥梁模式和策略模式的区别
  2. FFmpeg环境安装及使用命令实现音视频转码
  3. 2021-02-23 PMP 群内练习题 - 光环
  4. 关于SpringCloud Alibaba,动力节点的这份笔记教程真香
  5. Metalink Account
  6. 智慧物业,美丽家园中的充电桩应用
  7. 删除的照片如何恢复?SD卡数据恢复妙招
  8. 月薪8000的出租车司机给我上了震撼一课...
  9. 电信3g手机僵局中国it
  10. Linux 流量监控软件 NetHogs