当前位置: 首页 > article >正文

如何使用 TortoiseGit(小乌龟)进行分支创建、切换与合并以及解决冲突

😀前言
本文将详细介绍如何使用 TortoiseGit(小乌龟)进行分支创建、切换与合并以及解决冲突等操作。TortoiseGit 是一个广泛使用的 Windows 图形化 Git 客户端,其友好的用户界面和丰富的功能使得 Git 操作变得更加直观和便捷。

🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

文章目录

    • 创建分支
    • 切换分支
    • 合并分支
    • 如何解决冲突
      • 场景:
      • 解决
      • 小结

创建分支

  • 在工作区依次点击 鼠标右键 -> TortoiseGit -> 创建分支
image-20240830212501586

master主分支下创建master.txt文件

  • 下面窗口出现后,输入分支名称为dev,即完成创建分支;
image-20240830212746406

dev分支下创建dev.txt文件

切换分支

  • 在工作区依次点击 鼠标右键 -> TortoiseGit -> 切换/检出
image-20240830212936776 image-20240830213020700

点击确定出现成功,且中间为绿色,则分支切换完成。

  • 在工作点击鼠标右键,发现下图所示 commit 对象由 master 变为 dev 分支
image-20240830213230501

合并分支

  • 首先切换至合并的分支,注意:这里我们想要把 dev 合并到 master,我们就从 dev切换到 master;
  • 鼠标右键 -> TortoiseGit -> 合并,选择合并来源分支;
image-20240830213325174
  • 注意查看合并后的文件夹发生了变化,dev分支中创建的 dev.txt 文件出现在当前分支。

确定后可能会提示有错误,这是需要解决冲突,右键 “解决冲突”

image-20240830213627970

右键 “编辑冲突”,编辑后保存提示选择解决冲突,

image-20240830213645360

解决完冲突,提交并推动到服务器,合并完成,记得切换回自己的分支继续开发。

如何解决冲突

场景:

  • 场景一:本地相同文件冲突
  • 场景二:服务端相同文件冲突
  • 场景三:服务端不同文件冲突
  • 场景四:服务端文件名冲突

解决

使用git stash可以解决,那TortoiseGit如何使用stash

1、先拉取,拉取失败后“贮藏更改”。

image-20240830214759466

2、给贮藏一个名字,自己根据需求取。

image-20240830214828240

3、添加成功之后,建议不要关闭窗口,因为一会要使用它。

4、这时候就可以重新拉取。

5、拉取成功,使用第三步中的窗口“弹出贮藏”。

image-20240830215015161

6、选择是

image-20240830215031477

7、然后就可以提交自己的文件了。

8、如果出现冲突了,双击冲突的文件。

image-20240830215206419

9、修改“已合并”的区域,橙色表示git最新版本的修改。

image-20240830215309328

10、修改完成之后,Ctrl+S保存,“标记为已解决”,这时候就可以再次提交了。

image-20240830215328007

最好是在不更新的情况下,把冲突先解决掉,然后提交代码!

小结

通过上述步骤,我们可以有效地使用 TortoiseGit 解决冲突。冲突的产生在多人协作开发中难以避免,但通过合理使用 git 贮藏、及时拉取远程代码以及谨慎地处理每个冲突,我们能够确保项目代码的稳定性和一致性。在解决冲突后,建议对代码进行必要的测试和评审,以确保最终合并的代码不会引入新的问题。记住,预防冲突比解决冲突更重要,定期与团队同步代码并遵循最佳实践,可以大大减少冲突发生的概率。

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞


http://www.kler.cn/a/287976.html

相关文章:

  • Spring中的Bean
  • 【eNSP】企业网络架构实验——vlan间的路由通信(三)
  • 本地 / 网络多绑定用例总结
  • java算法性能调优:详尽探讨时间复杂度与空间复杂度的分析与优化“
  • 【PyTorch】libtorch_cpu.so: undefined symbol: iJIT_NotifyEvent
  • go反射深入学习
  • SpringMvc详解
  • 进程间通信——IPC机制(二)消息队列
  • 设计模式创建型模式之原型模式
  • Android TV的行添加和行中数据项添加
  • 3. 创建一个新的 Git 仓库
  • MySQL之数据库基础
  • SpringBoot项目集成支付宝
  • 2024.8.28 C++
  • 物联网之云平台架构
  • 详细解说:ansible自动化运维项目
  • python基础(16面试题附答案一)
  • 【随记】开源 AI(Open source AI)
  • read()和readlines()的区别
  • DReg-NeRF: Deep Registration for Neural Radiance Fields论文解读
  • Flask框架 完整实战案例 附代码解读 【3】
  • 【ag-grid】列宽设置不生效探索
  • 基于vue框架的超市管理系统y9992(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • Linux_kernel简介01
  • JavaEE 第21节 UDP数据报结构剖析
  • 【区块链 + 物联网】可信保密的海洋大数据分析平台 | FISCO BCOS应用案例