SourceTree 使用技巧

参考资料

  1. SourceTree使用教程(一)—克隆、提交、推送
  2. SourceTree的软合并、混合合并、强合并区别
  3. SourceTree 合并分支上的多个提交,一次性合并分支的多次提交至另一分支,主分支前进时的合并冲突解决

目录

  • 一. 基础设置
    • 1.1 用户信息设置
    • 1.2 比较与合并工具设置
    • 1.3 代理设置
    • 1.4 SSH密钥
  • 二. 代码提交
    • 2.1 提交与推送
    • 2.2 部分代码块提交
    • 2.3 丢弃对代码的修改
    • 2.4 贮藏
    • 2.5 交互式变基
  • 三. 代码回滚
    • 3.1 回滚提交
    • 3.2 回滚到指定版本
    • 3.3 重置到提交概念解释
      • 3.3.1 软合并-保持本地所有改动
      • 3.3.2 混合合并-保持工作副本并重置索引
      • 3.3.3 强行合并-丢弃所有改动过的工作副本
  • 四. 分支
    • 4.1 分支创建
    • 4.2 分支切换
    • 4.3 分支删除
    • 4.4 分支合并
  • 五. 代码冲突解决


一. 基础设置

1.1 用户信息设置

👉全局用户信息配置

在这里插入图片描述

👉单独项目用户信息配置

在这里插入图片描述

1.2 比较与合并工具设置

👉当代码冲突时,所使用的比较与合并工具是可以自己指定的。

在这里插入图片描述

1.3 代理设置

👉国内使用Github时,速度可能会比较慢。可以在此处指定魔法上网的代理服务器地址。

在这里插入图片描述

1.4 SSH密钥


二. 代码提交

2.1 提交与推送

⏹点击提交按钮

在这里插入图片描述

⏹将文件添加到暂存区

在这里插入图片描述

⏹点击提交按钮,将文件添加到本地Git仓库
git是分布式版本控制工具,存在着本地仓库和远程仓库,所以我们在本地工作副本进行的编辑,要先提交到本地仓库,再从本地仓库推送到远程仓库。

在这里插入图片描述

⏹点击推送按钮,将本地git仓库中的变更文件,提交到远端的Git仓库中。

在这里插入图片描述

2.2 部分代码块提交

⏹如下图所示,我们对3处进行了修改,但只有js处的代码是本次想要提交的

在这里插入图片描述

⏹在未暂存文件区域,选中一行变更的代码,然后按住Shift进行多选,然后点击暂存行。
然后在已暂存文件区域处,可以看到只把js处的代码反映上去了。

在这里插入图片描述

2.3 丢弃对代码的修改

⏹如果想要丢弃所写的代码,选中代码文件后,选择丢弃即可。

在这里插入图片描述

⏹如果只是部分代码想要丢弃,可以选中要丢弃的代码后,选择丢弃行

在这里插入图片描述

2.4 贮藏

🤔现在使用Git都是用多分支进行开发,我们一般在自己所在的分支进行开发。但是有时候,可能需要切换到别人所在的分支,帮别人对应bug。
此时自己所在画面的代码可能还没有写完,此时可以将代码提交到本地仓库,或者可以使用贮藏功能将修改的代码暂存起来。

⏹如下图所示,我们点击贮藏按钮,添加描述后,将此次变更暂存起来。

在这里插入图片描述

⏹在贮藏区域,我们可以看到修改的内容

在这里插入图片描述

⏹我们的修改内容放到暂存区之后,本地的代码会返回到未修改的版本。
我们还可以点击应用贮藏区,来将变更的代码反映到本地的工作副本。

在这里插入图片描述

2.5 交互式变基

🤔变基可以将多次本地提交合并为一次提交,简化提交履历。
💥注意:多次提交只是提交到本地Git仓库,并没有推送到远端。

⏹如下图所示,我们分3次提交了代码到本地Git仓库,这3次提交都只是添加了console.log语句,
因此可以合并为一次提交然后推送到远端仓库

在这里插入图片描述

⏹交互式变基操作如下所示,选中要合并的提交的前一次提交,点击交互式变基功能,
然后将多次提交合并为一次。

在这里插入图片描述

三. 代码回滚

3.1 回滚提交

🤔有时候刚推送完代码后,发现代码存在错误。这个时候,回滚提交就起到了作用。
💥注意:只能回滚到上一个版本。

⏹如下图所示,我们在最近一次的版本上,创建了一个文件01-test01.html

在这里插入图片描述

⏹此时,选择回滚提交,会看到Git给我们创建了一个反向提交,用来撤销上一次的修改。

在这里插入图片描述

3.2 回滚到指定版本

⏹点击要回滚到的版本,选择重置当前分支到此次提交,然后选择强行合并

在这里插入图片描述
⏹ 选择强行合并之后的效果如下
💥注意:有提示拉取,不要拉取,忽略它。

在这里插入图片描述

⏹ 选中最近一次提交,然后在重置当前分支到此次提交中选择软合并

在这里插入图片描述
⏹ 选择软合并之后的效果如下
🤔可以看到未提交的更改中多了一个文件,这个文件正好就抵消了红框中变更履历所对应的内容
只要我们将未提交的更改中的文件选中推送,正好就回滚到了我们指定的版本。

在这里插入图片描述

3.3 重置到提交概念解释

⏹ 如下图所示,我们向本地的Git仓库提交了console.log打印

在这里插入图片描述

3.3.1 软合并-保持本地所有改动

将此次提交回滚到指定提交位置,但这个过程中会将修改过的文件暂存到暂存区。

⏹软合并效果如下
🤔可以看到,我们的修改的代码,跑到了已暂存文件区域。

在这里插入图片描述

3.3.2 混合合并-保持工作副本并重置索引

将此次提交回滚到指定的位置,但这个过程中不会将修改过的文件暂存到暂存区,而是将修改过的文件存放在未暂存文件区。

⏹混合合并效果如下
🤔可以看到,我们的修改的代码,跑到了未暂存文件区域。

在这里插入图片描述

3.3.3 强行合并-丢弃所有改动过的工作副本

将此次提交回滚到指定的位置,但这个过程中将直接丢弃之前修改的所有文件,因此在选取此种合并时需要考虑清楚,避免一些不必要的麻烦。

⏹强行合并效果如下
🤔可以看到,我们修改的所有代码,都消失不见,且无法找回。

在这里插入图片描述

四. 分支

4.1 分支创建

4.2 分支切换

4.3 分支删除

4.4 分支合并

五. 代码冲突解决

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

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

相关文章

VR司法法治教育平台,沉浸式课堂教学培养刑侦思维和能力

VR司法法治教育平台提供了多种沉浸式体验,通过虚拟现实(Virtual Reality,简称VR)技术让用户深度参与和体验法治知识。以下是一些常见的沉浸式体验: 1.罪案重现 VR司法法治教育平台可以通过重现真实案例的方式,让用户亲眼目睹罪案发…

一文了解气象站是什么,作用有哪些?

气象站被广泛应用于气象、农业、交通、能源、水利、环保等领域,是一种用于收集、分析和处理气象数据的设备,能够为人们提供及时、准确的气象数据和决策支持。 气象站一般由传感器、环境监控主机和监控平台组成。传感器能够测量各种气象要素,…

Spring 中存取 Bean 的相关注解

目录 一、五大类注解 1、五大类注解存储Bean对象 1.1Controller(控制器储存) 1.2Service(服务存储) 1.3Repository(仓库存储) 1.4Component(组件存储) 1.5Configuration(配置存储) 2、五大类注解小结 2.1为什么要这么多类注解 2.2 五大类注解之间的关系 二、方法注解 1.方法注…

SQL-子查询

SQL 子查询 是指将一个SELECT查询(子查询)的结果用括号括起来作为另一个SQL语句的数据来源或者判断条件

【Bug】Ubuntu 有线设置打不开无反应

前言: 突然有线设置就没法启用了,但是能联网,能查看ip 解决: 最后安装了一个新的依赖包: sudo apt install gnome-control-center 然后就可以了 还有一个方法,没试过,但感觉有点道理的&#…

在抖音中使用语聚AI,实现自动回复用户视频评论、私信问答

您可以通过集简云数据流程,将语聚AI助手集成到抖音视频评论、抖音私信,实现自动回复用户视频评论、私信问答,大大提升账号互动与运营效率。 效果如下: 自动化流程: ● 抖音普通号评论对接语聚AI(点击可一…

宏观经济和风电预测误差分析(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

pytorch异常——RuntimeError:Given groups=1, weight of size..., expected of...

文章目录 省流异常报错异常截图异常代码原因解释修正代码执行结果 省流 nn.Conv2d 需要的输入张量格式为 (batch_size, channels, height, width),但您的示例输入张量 x 是 (batch_size, height, width, channels)。因此,需要对输入张量进行转置。 注意…

LLM学习笔记(1)

学习链接 ChatGPT Prompt Engineering for Developers - DeepLearning.AI 一、prompt engineering for developer 1、原则 prompting principles and iterative pattern 2、用于summarize 环境与helper functions import openai import osfrom dotenv import load_dotenv…

[C++] STL_list常用接口的模拟实现

文章目录 1、list的介绍与使用1.1 list的介绍1.2 list的使用 2、list迭代器3、list的构造4、list常用接口的实现4.1 list capacity4.2 插入删除、交换、清理4.2.1 insert任意位置插入4.2.2 push_front头插4.2.3 push_back尾插4.2.4 erase任意位置删除4.2.5 pop_front头删4.2.6 …

Redis之管道解读

目录 基本介绍 使用例子 管道对比 管道与原生批量命令对比 管道与事务对比 使用pipeline注意事项 基准测试 基本介绍 Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务器。 这意味着请求通常按如下步骤处理: 客户端发送一个请求到服务器&am…

java 八股文 基础 每天笔记随机刷

Component 和 PostConstruct 搭配使用 被Component注解标识的类在应用程序启动时会被实例化,并由Spring容器进行管理。PostConstruct是一个Java注解,用于标记一个方法在类被实例化后自动执行。该方法必须是非静态的,没有参数,且不…

数字货币量化交易平台

数字货币量化交易平台是近年来金融科技领域迅速崛起的一种创新型交易方式。它通过应用数学模型和算法策略,实现对数字货币市场的自动交易和风险控制。然而,要在这个竞争激烈的领域中脱颖而出,一个数字货币量化交易平台需要具备足够的专业性&a…

正中优配:A股早盘三大股指微涨 华为概念表现活跃

周三(8月30日),到上午收盘,三大股指团体收涨。其间上证指数涨0.06%,报3137.72点;深证成指和创业板指别离涨0.33%、0.12%;沪深两市合计成交额6423.91亿元,总体来看,两市个…

java-数组

数组静态初始化写法: //静态初始化数组 int[] age new int[] {7,18,19}; double[] scores new double[]{67.5,77.8,94.2,99};//静态初始化数组简化写法 int[] age1 {7,18,19}; double[] scores2 {67.5,77.8,94.2,99};数组在内存中定义方式: 1.在内…

opencv的haarcascade_frontalface_default.xml等文件

文章目录 GitHub下载在安装好的OpenCV文件夹下寻找opencv-python中获取 GitHub下载 下载地址:https://github.com/opencv/opencv/tree/master/data/haarcascades 在安装好的OpenCV文件夹下寻找 路径如下: 你安装的opencv路径\OpenCV\opencv\build\et…

ELK安装、部署、调试(一)设计规划及准备

一、整体规划如图: 【filebeat】 需要收集日志的服务器,安装filebeat软件,用于收集日志。logstash也可以收集日志,但是占用的系统资源过大,所以使用了filebeat来收集日志。 【kafka】 接收filebeat的日志&#xff…

Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘

最近在用django框架开发后端时,在运行 $python manage.py makemigrations 命令时,报了以上错误,错误显示连接mysql数据库失败,查看了mysql数据库初始化配置文件my.cnf,我的mysql.sock文件存放路径配置在了/usr/local…

查看GPU占用率

如何监控NVIDIA GPU 的运行状态和使用情况_nvidia 85c_LiBiGo的博客-CSDN博客设备跟踪和管理正成为机器学习工程的中心焦点。这个任务的核心是在模型训练过程中跟踪和报告gpu的使用效率。有效的GPU监控可以帮助我们配置一些非常重要的超参数,例如批大小,…

java八股文面试[数据库]——MySQL索引的数据结构

知识点: 【2023年面试】mysql索引的基本原理_哔哩哔哩_bilibili 【2023年面试】mysql索引结构有哪些,各自的优劣是什么_哔哩哔哩_bilibili