git可视化工具Sourcetree使用全攻略(git冲突解决)

目录
  • 导入仓库
  • 更新版本操作
    • 修改
    • 拉取
    • 提交
  • 分支操作
    • 远程分支与本地分支
    • 切换分支
    • 贮藏
    • 删除分支
    • 获取远程分支
    • 创建新分支
    • 合并分支内容
  • 冲突
    • 合并冲突
    • 未拉取便提交冲突
    • 拉取代码与本地修改代码有冲突
    • 撤销合并操作
  • 尾言

导入仓库

首先我们需要知道自己的仓库如何拉取到本地。

这里以码云为例,找到对应的源路径/URL:

复制,然后来到Sourcetree:

更新版本操作

修改

当你本地代码发生改变时,会出现未暂存文件:

拉取

当别人更新了代码,而你本地没有拉取,拉取会亮起,可以点击拉取别人代码:

提交

当你修改了代码,需要提交操作:

分支操作

远程分支与本地分支

分支分为远程仓库的分支,与被你拉取到本地的分支

切换分支

要注意,如果本地有修改了没有提交的代码,注意是修改,新增内容一般是不影响的,切换时会报错。

可以先通过提交操作再切换。

但是问题来了,如果你代码就修改了一半你还不想提交但是又不得已切换分支怎么办呢?看下面。

贮藏

可以暂时保留修改的内容,清空状态区,就可以进行切换分支操作,等切换回来时再应用贮藏区,变回原来修改中的状态。

当我们切换出去再切回来时,再进行应用

删除分支

需要注意的是,删除当前分支时需要切换去别的分支,你不可以删除当前自己所在的分支。

获取远程分支

我删除了本地的dev分支,这时候我想要获取远程的dev分支到本地,如何操作:

需要注意的是检出分支时会自动切换去检出的分支,如果你本地还有修改了未提交的代码,要注意先提交或者进行贮藏操作噢。

创建新分支

比如我们希望创建一个测试版本的分支,所有更新操作都在测试版本上做,如果没问题了再合并来主分支,怎么创建呢?

其实也还是检出操作,所以一样要注意本地未提交代码问题。

合并分支内容

我们在test测试分支上提交了代码,我们希望将他合并到master主分支。

首先我们先切回主分支:

冲突

合并冲突

为了测试冲突,我们先在master上创建提交一个简单的内容,注释了的111:

接下来我们切去test分支,在同样的位置,提交一个注释的222:

然后我们切换到master分支,进行将test合并到master的操作,会提示你冲突了:

我们可以看到两个不同版本的状态,冲突内容:

选择你要保留的,如果是我的版本那就是保留//111,如果是他人版本就是保留//222。

但是这里我们合并test,test只修改了这个内容,如果我们选择我的版本进行合并,虽然进行了合并操作,这次的合并操作便没了什么意义,我们的master分支内容什么都没变。

不过实际项目中我们不会出现这种情况,肯定是视需求而决定需要保留什么内容,比如test除了这个与我们冲突的注释,还新增了其他功能,我们虽然没有采纳这个注释的修改,但是我们合并了新增的功能。

被合并的test分支不会受到合并操作的任何影响,内容不会发生改变,我们的合并操作只是为了让master分支能够得到test上更新的代码。

未拉取便提交冲突

一般多人开发时会遇到的状况。

如果代码没有冲突,你们修改的不是同一个页面的代码,那拉取与提交的先后是不影响代码内容的。

比如别人制作了一个新页面,你没有拉取下来,你修改了原来页面的内容,直接提交。

报错了。

出现这种推送不上去的状态。

这时候不用急,你只要确保不要让自己的错误提交到远程就好

记住,工作中,宁愿自己修改的代码丢失,也千万别覆盖别人修改的代码

其实很简单,我们切回到我们提交前的即可。

接下来先拉取再提交即可。

如果我们先拉取再提交时,先拉取就报错了,一般就是最后一个错误:拉取代码与本地修改代码有冲突,见下一节。

拉取代码与本地修改代码有冲突

比如别人将注释修改为333,而你本地修改代码时,注释修改成了777。

现在你想提交,先拉取再提交。

拉取时就报错了,死活拉不下来,多少遍也不行。

这时候我们就先提交再拉取。

然后就会告诉你冲突在哪里了,我们就选择保留哪个了,见上文合并冲突解决方法,解决完冲突再提交即可。

撤销合并操作

假如自己合并了不想合并的内容,想撤销掉一次合并操作,如何进行呢?

上图dev合并到了master上面,这时候我们选择合并前master的那一次提交,选择重置分支到此次提交。

打开强制推送。

不去管提交和拉取,直接选择推送。

把改变内容全部移除和丢弃

然后就发现合并操作消失了。

尾言

看完这些,使用sourcetree可以解决你日常95%的git版本控制问题啦,更多相关git可视化工具Sourcetree内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • VS Code使用Git可视化管理源代码详细教程(推荐)

    前言: 随着VS Code的功能和插件的不断强大和完善,它已经成为了我们日常开发中一个必不可缺的伙伴了.在之前我曾经写过一篇SourceTree使用教程详解(一个git可视化管理神器,想要了解的话可以点击查看详情),这篇文章主要是对VS Code如何使用Git可视化管理我们的程序源代码. VS Code简介: 官网下载地址: https://code.visualstudio.com/ Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在您的桌面上运行,并且可用于Win

  • Git可视化教程之Git Gui的使用

    在Git简介一文中已经对Git进行了简单的介绍,但是理论知识过于枯燥,加上本人专业知识不够扎实,使得初学者在Git的使用上还是会有很大的困难.虽然我更推荐使用Git Bash方式对Git进行操作,但是对于大部分只是想简单地使用一下Git进行版本控制和团队开发的朋友而言,仍然更加钟情于可视化界面.所以本文对Git官方自带的可视化工具Git Gui的使用进行介绍,尽量做到图文并茂,让所有初探Git的朋友都能够快速入门,使用Git进行项目开发. 1.在本地新建版本库 首先,我们打开Git GUI是这样

  • git可视化工具Sourcetree使用全攻略(git冲突解决)

    目录 导入仓库 更新版本操作 修改 拉取 提交 分支操作 远程分支与本地分支 切换分支 贮藏 删除分支 获取远程分支 创建新分支 合并分支内容 冲突 合并冲突 未拉取便提交冲突 拉取代码与本地修改代码有冲突 撤销合并操作 尾言 导入仓库 首先我们需要知道自己的仓库如何拉取到本地. 这里以码云为例,找到对应的源路径/URL: 复制,然后来到Sourcetree: 更新版本操作 修改 当你本地代码发生改变时,会出现未暂存文件: 拉取 当别人更新了代码,而你本地没有拉取,拉取会亮起,可以点击拉取别人代

  • VSCode插件开发全攻略之打包、发布、升级的详细教程

    一.发布方式 插件开发完了,如何发布出去分享给他人呢?主要有3种方法: 方法一:直接把文件夹发给别人,让别人找到vscode的插件存放目录并放进去,然后重启vscode,一般不推荐: 方法二:打包成vsix插件,然后发送给别人安装,如果你的插件涉及机密不方便发布到应用市场,可以尝试采用这种方式: 方法三:注册开发者账号,发布到官网应用市场,这个发布和npm一样是不需要审核的. 二.本地打包 无论是本地打包还是发布到应用市场都需要借助vsce这个工具. 安装: npm i vsce -g 打包成v

  • 微信公众帐号开发教程之图文消息全攻略

    引言及内容概要 已经有几位读者抱怨"柳峰只用到文本消息作为示例,从来不提图文消息,都不知道图文消息该如何使用",好吧,我错了,原本以为把基础API封装完.框架搭建好,再给出一个文本消息的使用示例,大家就能够照猫画虎的,或许是因为我的绘画功底太差,画出的那只猫本来就不像猫吧-- 本篇主要介绍微信公众帐号开发中图文消息的使用,以及图文消息的几种表现形式.标题取名为"图文消息全攻略",这绝对不是标题党,是想借此机会把大家对图文消息相关的问题.疑虑.障碍全部清除掉. 图文消

  • 注册表REG文件全攻略—注册表使用全攻略之十五

    注册表REG文件全攻略-注册表使用全攻略之十五 1.何谓REG文件 REG文件实际上是一种注册表脚本文件,双击REG文件即可将其中的数据导入到注册表中.利用REG文件我们可以直接对注册表进行任何修改操作,它对注册表的操作可以不受注册表编辑器被禁用的限制,因此功能更为强大.灵活,另外,由于REG文件可以用任何文本文件编辑工具(例如记事本)进行修改,因此通过它对注册表数据进行修改后,如果发生错误,还可以通过改回REG文件中的数据后再导入,从而实现恢复操作,因此它又较之直接用注册表编辑器修改更安全,所

  • 注册表应用100例—注册表使用全攻略之十一

    注册表应用100例-注册表使用全攻略之十一 1 修改窗口滚动条的大小(Windows 9x/2000/XP)(1)打开注册表编辑器.(2)打开HKEY_CURRENT_USER\Control Panel\Desktop\Windows Metrics子键.(3)右边窗口中的ScrollHeight和ScrollWidth是窗口滚动条的高和宽,默认值为-270(均以Windows 9x为例,Windows 2000/XP的默认值与其相差不大),分别双击ScrollHeight和ScrollWid

  • 被恶意网站击中的解决办法——注册表使用全攻略之六

    被恶意网站击中的解决办法--注册表使用全攻略之六 一.注册表被修改的原因及解决办法 恶意网页是含有有害代码的ActiveX网页文件,这些广告信息的出现是因为浏览者的注册表被恶意更改的结果. 1.IE默认连接首页被修改 IE浏览器上方的标题栏被改成"欢迎访问--网站"的样式,受到更改的注册表项目为:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\Start PageHKEY_CURRENT_USER\Softwar

  • 解开注册表被锁的方法—注册表使用全攻略之四

    解开注册表被锁的方法-注册表使用全攻略之四 一.解锁方法: 1. 你可以在恢复注册表时,用F8进入选DOS模式或用 运行,C:>SCANREG/RESTORE  2. 你也可以用NotePad编辑一个文本文件,保存文件的时候用格式 xxxxxx.reg 在文件中打入以下: (空一行)REGEDIT 或 REGEDIT4 [HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\ Policies\system"Disabl

  • 剖析各类恶意网页对策分析—注册表使用全攻略之七

    剖析各类恶意网页对策分析-注册表使用全攻略之七 互联网利用IE等的漏洞完全可以让你通过浏览网页让你的电脑面目全非,或者格盘,甚至中下木马,传播病毒,而且这种形式的传播愈演愈烈,闲话少说了,现在来分析一下各类恶意网页. 分析前先介绍一下注册表的修改方法,因为注册表在网页病毒中是中枢,就是通过它让你的电脑面目全非. 第一种方法:直接修改法 就是在运行里敲入regedit,然后进行编辑,这是大家通常修改注册表的方法. 第二种方法:reg包导入法 现在以解锁注册表为例(其实解锁用兔子等工具更好更方便,这

  • 恶意网页之注册表后门—注册表使用全攻略之十九

    恶意网页之注册表后门-注册表使用全攻略之十九 浏览器顽固不改, 修改注册表成功,重新启动后又恢复到被修改的状态 主要是修改注册表后留后门,目的让你修改注册表好像成功,重新启动后又恢复到被修改的状态. 这主要是在启动项里留了后门,大家可以打开注册表到 HKCU\Software\Microsoft\Windows\CurrentVersion\Run HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce HKCU\Software\Micro

  • XP注册表之性能优化—注册表使用全攻略之十八

    XP注册表之性能优化-注册表使用全攻略之十八 1.加快开机及关机速度 在[开始]-->[运行]-->键入[Regedit]-->[HKEY_CURRENT_USER]-->[Control Panel]-->[Desktop],将字符串值[HungAppTimeout]的数值数据更改为[200],将字符串值[WaitToKillAppTimeout]的数值数据更改为1000.另外在[HKEY_LOCAL_MACHINE]-->[System]-->[Current

随机推荐