Git
文章平均质量分 86
YahirQ
你好,我是YahirQ,一个写了十年代码的“老”程序员。
我的技术地图有点广:以 .NET 为根据地,也曾远征 Java、C++、Python 的江湖,并用 Vue、SQL 和 iOS 开发过不少应用。这些经历让我明白,技术之道,万变不离其宗。
而现在,我选择了一条“向下扎根”的道路——嵌入式开发。我着迷于代码如何直接驱动硬件,享受在资源受限的环境下创造价值的乐趣。这对我而言,是一个全新的起点。
在这里,我将以一个“资深新手”的视角,记录并分享从传统软件到嵌入式世界的转型之路。我的文章会力求通俗易懂,既有硬核的代码分析,也有踩坑填坑的实战记录。期待能与志同道合的你一起学习,共同成长!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入理解 Git Rebase:原理、用法与最佳实践
<think>我们只需基于内容生成摘要,≤150字。摘要应涵盖核心:rebase原理(重放提交到新基底)、交互式变基、冲突处理、最佳实践(勿对公共提交变基)。语言简洁。字数统计中文字符。</think>Git Rebase通过将当前分支提交“重放”到目标分支基底上,实现线性历史,无合并提交。其原理分三步:找共同祖先、提取补丁、重新应用(哈希改变)。支持交互式变基整理提交、冲突解决(--continue/--abort)及合并前清理。核心戒律:勿对已推送的公共提交变基;私有分支可放心用,公共分支禁用。原创 2026-09-02 08:14:16 · 343 阅读 · 0 评论 -
如何查看已合并到 master 分支的所有分支?Git 分支清理指南
本文详解如何查看并清理已合并至 master(或 main)的Git分支。核心命令为 git branch --merged master,可列出所有已合并的本地分支,结合 grep -v 排除主分支后,使用 git branch -d 安全删除。远程分支可通过 git branch -r --merged 检查,并用 git push origin --delete 删除。建议定期执行 git fetch --prune 清理过时引用,养成合并后立即删除分支的习惯,保持仓库整洁高效。原创 2026-09-02 08:11:58 · 282 阅读 · 0 评论 -
安全删除远程分支,给 Git 仓库“减负”的完整指南
本文提供了安全删除Git远程分支的完整指南,重点在于如何在不影响团队协作的前提下清理过时分支。文章首先强调了定期清理远程分支的重要性,包括减轻认知负担、优化CI/CD等。核心部分提出删除远程分支的三项铁律:只删自己的分支、确认已完全合并到主干、确保本地最新。详细介绍了如何在SourceGit中可视化确认合并状态,以及三种删除方式(GUI/命令行/批量删除)。最后强调删除后的清理步骤和常见陷阱,并总结了标准化操作流程。全文强调安全第一,推荐通过双重验证和团队沟通来避免误删风险。原创 2026-08-26 08:31:34 · 626 阅读 · 0 评论 -
SourceGit 分支线路图查看与合并状态判断指南
SourceGit 的提交图与分支树为您提供了图形化的视角,让分支关系一目了然;而通过命令,您又能获得最精确的合并状态。将这两种方式结合使用,您可以在日常开发中高效地管理分支,避免重复合并或遗漏合并。希望本文能帮助您更熟练地运用 SourceGit,如有其他疑问,欢迎进一步探索。原创 2026-08-26 08:13:53 · 397 阅读 · 0 评论 -
SourceGit 安装与使用完全教程
SourceGit是一款跨平台开源Git图形客户端,支持Windows、macOS和Linux系统。安装前需确保已安装Git 2.25.1及以上版本。Windows用户可通过winget/Scoop安装或下载便携版;macOS推荐使用Homebrew;Linux用户需下载对应发行版包。主要功能包括克隆仓库、代码提交、分支管理、冲突解决等,特色功能如AI生成提交消息、多语言界面和可视化提交图。配置数据存储在系统特定目录,常见问题包含Git未找到和macOS安全限制等。原创 2026-08-18 20:52:39 · 318 阅读 · 0 评论 -
Git stash pop 冲突后如何安全回退并切换回原分支
本文介绍了当 git stash pop 发生冲突时,如何安全回退并切换回原分支的解决方案。主要内容包括: 问题场景:在分支间切换时出现 stash 应用冲突 关键发现:冲突时 stash 不会自动删除 推荐解决方案步骤: 使用 git reset --hard HEAD 放弃冲突 切换回原分支 使用 git stash apply 重新应用原 stash 备选方案:保存冲突状态后再切换 实用技巧:如何查看和区分多个 stash 文章强调使用 apply 比 pop 更安全,并提供了注意事项和操作总结表。这原创 2026-08-10 14:32:28 · 362 阅读 · 0 评论 -
Windows 下 Gitee 与 GitHub 共用 SSH 密钥配置指南(同邮箱方案)
Windows下Gitee与GitHub共用SSH密钥配置指南(同邮箱方案) 本文详细介绍了在Windows系统中为Gitee和GitHub(使用同一邮箱注册)配置共用SSH密钥的方法。主要内容包括: 确认现有SSH密钥:检查.ssh目录下已有的密钥文件 添加公钥到GitHub:复制现有公钥内容并上传至GitHub账户 配置SSH客户端:通过编辑config文件实现: 为Gitee保留原有配置 为GitHub指定443端口和专用域名 两个平台指向同一私钥文件 验证连接:测试SSH连通性并处理首次连接时的指纹原创 2026-08-04 22:39:11 · 385 阅读 · 0 评论 -
告别卡顿:TortoiseGit 轻量级替代方案完全指南——Git 图形客户端推荐
本文为Windows开发者提供了一份TortoiseGit轻量级替代方案指南。针对TortoiseGit在大型项目中卡顿的问题,推荐了多种现代高性能Git客户端,包括Fork、SourceGit、Leviathan等图形界面工具,以及Lazygit、GitUI等终端工具。文章详细比较了各工具的平台支持、开源情况、核心特点,并提供了选择建议。对于习惯右键操作的用户,还推荐了Git Extensions作为过渡方案。最后给出了迁移小贴士,帮助开发者顺利切换到更流畅的Git工作环境。原创 2026-08-03 21:45:03 · 399 阅读 · 0 评论 -
Windows 系统下 GitHub SSH 全局配置完全指南
本文提供了Windows系统下GitHub SSH全局配置的完整指南。主要内容包括: 生成SSH密钥对:推荐使用ed25519算法,或RSA 4096位算法作为替代 添加公钥到GitHub账户:通过GitHub设置页面完成绑定 三种SSH客户端配置方案: 创建SSH配置文件(支持多账号管理) 修改Git全局配置(单账号简单方案) 启用Windows OpenSSH服务(系统级稳定方案) 解决22端口被屏蔽问题:配置备用ssh.github.com:443地址 测试验证:提供基础测试命令和详细诊断脚本 文中特原创 2026-07-30 22:38:04 · 341 阅读 · 0 评论 -
Git 时间旅行实践指南:安全恢复或查看任意历史版本
摘要 Git 版本控制系统提供了灵活的时间旅行能力,但不同操作对项目历史的影响差异显著。本文系统介绍了安全查看或恢复历史版本的规范方法:(1) 通过 git log 按时间定位目标提交;(2) 临时查看推荐使用分离头指针或新建分支指向旧提交;(3) 永久恢复需区分场景:本地分支可用 reset,公共分支须用 revert。核心建议:浏览代码使用 checkout,开发旧版本优先 checkout -b 新建分支,团队协作禁用强制推送,始终优先保留可追溯的提交历史。原创 2026-06-29 17:48:54 · 392 阅读 · 0 评论 -
GitBlit 详解:轻量级的纯 Java Git 服务器
GitBlit是一款轻量级纯Java开发的Git服务器解决方案,主打快速部署和开箱即用。它通过单JAR包集成Web服务器、Git实现和权限管理,无需额外依赖即可运行,特别适合Java技术栈和小型团队使用。主要特点包括原生支持多种网络协议、细粒度权限控制、Web管理界面和简单协作功能。相比GitLab等重量级方案,GitBlit资源占用低但功能完备,缺点是缺乏Pull Request支持和社区活跃度较低。适合作为企业内部或个人开发者的简易Git服务,尤其适用于需要快速搭建且运维成本低的场景。原创 2026-06-05 14:23:48 · 669 阅读 · 0 评论 -
深度解析 Gitee Go:国内开发者不可错过的 CI/CD 利器
Gitee Go是国内代码托管平台Gitee推出的企业级CI/CD工具,深度集成于Gitee平台,提供从代码提交到应用上线的全流程自动化能力。该工具围绕流水线(Pipeline)概念构建,支持多阶段任务编排,提供丰富的官方和社区插件,适用于90%以上的研发场景。Gitee Go的主要优势包括:极低成本门槛(提供大量免费时长)、国内服务器带来的快速构建速度、符合国内数据安全法规要求,以及一站式研发流程覆盖。相比GitHub Actions等国外工具,Gitee Go更适合国内开发者和中小团队,支持可视化编排和原创 2026-05-28 21:46:53 · 669 阅读 · 0 评论 -
Ubuntu 下 Git 完全使用指南
本文系统介绍了在Ubuntu系统下使用Git的完整指南。内容涵盖Git安装(默认源和PPA方式)、初始配置(用户名/邮箱设置)、基本工作流(创建/克隆仓库、忽略文件、日常提交)、核心命令速查表、分支管理(创建/合并/冲突解决)、远程协作(SSH/HTTPS配置)以及常见问题排查。通过本文,读者可以掌握从Git基础操作到团队协作开发的完整技能,包括提交规范、分支策略和代理设置等实用技巧,适合个人开发者和团队协作参考使用。原创 2026-05-02 09:30:15 · 1516 阅读 · 0 评论 -
Visual Studio Git 使用指南
Visual Studio 2022深度集成了Git功能,提供了直观的图形界面管理源代码。本文详细介绍了VS中Git的使用方法:从环境准备、克隆/创建仓库开始,重点讲解了"Git更改"窗口的日常操作,包括查看修改、暂存文件、提交推送等。同时涵盖了分支管理、查看历史、解决冲突等核心功能,以及储藏、重置等高级操作。文章还提供了实用技巧,如提交规范、频繁提交等最佳实践。VS的Git集成覆盖了日常开发需求,图形界面与命令行可互补使用,适合各层次开发者高效管理代码版本。原创 2026-03-18 21:45:24 · 1561 阅读 · 0 评论 -
Git Revert(还原) 详解
git revert是Git中安全撤销更改的命令,通过创建反向提交来抵消指定提交的影响,而不删除历史记录。它适用于撤销已公开的提交,避免了git reset重写历史的问题。基本用法为git revert <commit-hash>,支持多个选项如--no-edit、-n不自动提交等。与git reset不同,revert保留原始提交,更安全适合团队协作。处理合并提交需使用-m参数指定主分支。git revert是维护项目历史完整性的首选撤销方式。原创 2026-03-05 20:20:23 · 662 阅读 · 0 评论 -
Git Reset(重置) 详解
git reset是Git中用于撤销更改和调整提交历史的强大命令,主要操作HEAD、暂存区和工作目录三个区域。它提供三种模式:--soft仅移动HEAD指针,保留更改在暂存区;--mixed(默认)同时重置暂存区,保留工作目录修改;--hard彻底重置所有区域,丢失未提交更改。该命令常用于撤销提交、取消暂存文件或同步远程分支,但需注意--hard会永久删除未提交内容,且重写历史可能影响团队协作。相比git revert的安全撤销方式,reset更适合本地未推送的修改。原创 2026-03-05 20:01:58 · 603 阅读 · 0 评论 -
Git 中 提交(commit)和 合并(merge)的区别
Git 中提交(commit)和合并(merge)是两种核心操作,主要区别在于:提交用于记录本地更改到仓库,形成历史快照;而合并则是整合不同分支的更改。提交是频繁进行的细粒度操作,产生单父提交节点;合并相对较少执行,可能生成双父合并提交或快进移动指针。提交独立存在,合并依赖于分支上的提交历史。两者协同工作,提交保存开发进度,合并实现分支整合,共同构成Git版本管理的基础。原创 2026-03-05 18:56:55 · 698 阅读 · 0 评论 -
如何永久忽略本地配置文件修改:Git 与 TortoiseGit 实战指南
本文针对团队开发中需保持远程配置文件不变但本地需频繁修改的场景,提供两种解决方案:1) Git命令行使用--assume-unchanged或--skip-worktree命令忽略文件修改;2) TortoiseGit图形界面通过右键菜单设置"Assume Unchanged"。两种方式均可实现本地修改与版本控制的隔离,但需注意远程更新不会自动同步到本地。建议配合模板文件和团队文档说明使用,并定期检查被忽略文件列表。最佳实践是采用模板文件方案并明确记录处理方式。原创 2025-12-04 22:31:53 · 1509 阅读 · 0 评论 -
Git 中的 MERGE_HEAD 和 HEAD 的区别?
Git 中的 HEAD 和 MERGE_HEAD 是两个关键指针:HEAD 始终指向当前分支的最新提交(合并的目标分支),而 MERGE_HEAD 是仅在合并操作期间存在的临时指针,指向被合并的源分支的最新提交。在合并过程中,Git 会寻找这两个提交的共同祖先并尝试创建合并提交。发生冲突时,需要手动解决后再提交。合并完成后,MERGE_HEAD 会被自动删除。简单来说,HEAD 代表"我在哪里",MERGE_HEAD 代表"我要合并谁"。原创 2025-10-30 19:40:20 · 996 阅读 · 0 评论
分享