零基础入门GIT
GIT简介什么是版本控制版本控制Version Control是一种记录文件内容变化、以便查阅特定版本修订情况的系统。在软件开发中它追踪代码的每次修改支持随时回退到历史版本并与团队成员协同编辑而不互相覆盖。如果把每次修改文档都另存为「方案_v1.docx」「方案_v2_最终版.docx」就是在做手工版本控制。版本控制系统将这一过程自动化、规范化让每次修改都有迹可循。为什么需要版本控制场景没有版本控制使用版本控制代码改错想回退手动还原甚至无法恢复一条命令回退到任意历史版本多人同时修改同一文件互相覆盖、版本混乱自动合并、冲突提示想知道某段代码的作者和原因无法追查每次提交记录作者、时间和说明同时开发新功能又维护线上版本复制文件夹管理分支轻量分支随时创建、合并、切换硬盘损坏或误删数据永久丢失远程/分布式备份随时恢复版本控制是软件工程的基础设施——没有它稍具规模的开发难以有序进行。Git 的诞生Git 诞生于 2005 年由 Linux 内核创始人Linus Torvalds设计开发。当时 Linux 内核社区使用的商业版本控制工具 BitKeeper 被收回免费授权。面对全球最大开源项目突然失去版本控制工具的局面Linus 决定自己写一个。他设定了四个核心目标速度极快Linux 内核数万文件、数百万行代码任何操作需在秒级完成分布式每个开发者拥有完整仓库副本不依赖单一中央服务器数据完整性每次提交用 SHA-1 哈希唯一标识任何篡改立即被发现非线性开发强大的分支管理允许多条开发线并行仅用约两周时间Linus 写出了 Git 原型。如今 Git 已是全球使用最广泛的版本控制系统GitHub、GitLab、Gitee 等平台均基于 Git 构建。Git 与 SVN 的对比SVNSubversion是 Git 诞生前最主流的集中式版本控制系统。下表对比核心差异维度Git分布式SVN集中式架构每个开发者拥有完整仓库副本仅中央服务器保存完整仓库离线能力完整提交、历史、分支均可离线受限几乎所有操作需连接服务器分支操作轻量、秒级创建切换鼓励频繁使用笨重分支本质是目录复制成本高存储方式快照存储按内容寻址记录文件差异delta数据完整性SHA-1 哈希校验篡改可被检测依赖服务器端校验学习曲线概念较多暂存区、本地仓库初期较陡概念简单上手快速度绝大多数本地操作极快依赖网络受延迟和带宽限制适用场景现代软件开发、分布式团队、开源项目对目录级权限有严格需求的传统企业结论Git 的分布式架构、高效性能和灵活分支管理使其成为现代软件开发的事实标准。新项目几乎已全面采用 Git。下载及安装获取 GitGit 是免费的开源软件所有平台的安装包均可从官网获取https://git-scm.com官网会自动检测你的操作系统并提供对应的下载链接。镜像如腾讯软件中心、npm.taobao.org、git-for-windows下载以提升速度。验证安装安装完成后打开 CMD 或 PowerShell输入以下命令验证git --versionMac 安装方式一Homebrew 安装推荐Homebrew 是 Mac 上最流行的包管理器。如果尚未安装 Homebrew先在终端执行/bin/bash -c $(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)安装 Homebrew 后执行以下命令安装 Gitbrew install git方式二官网安装包访问 https://git-scm.com/downloads/mac 下载 .dmg 安装包双击运行并按照向导完成安装。方式三Xcode Command Line ToolsMac 已安装 Xcode 或运行过 xcode-select --install 的系统可能已内置 git通常版本较旧。可在终端运行 git --version 检查。Linux 安装在 Linux 上通过系统自带的包管理器即可安装 Git。Debian / Ubuntu 系列sudo apt updatesudo apt install gitRed Hat / Fedora / CentOS 系列Fedora 22sudo dnf install gitCentOS / RHEL 7 及更早版本sudo yum install gitArch Linuxsudo pacman -S git验证安装git --version安装后初始配置Git 安装完成后在正式开始使用前必须完成以下两项基础配置。这些配置只需执行一次会写入当前用户的全局 Git 配置文件位于 ~/.gitconfig 或 C:\Users\用户名\.gitconfig。配置用户名和邮箱这两项配置会出现在你每一次的提交记录中是代码归属的标识git config --global user.name 你的姓名git config --global user.email 你的邮箱example.com示例bashgit config --global user.name Zhang Sangit config --global user.email zhangsanexample.com配置换行符处理推荐不同操作系统使用不同的换行符Windows 用 \r\nCRLFMac / Linux 用 \nLF。为避免跨平台协作时出现混乱建议配置自动转换Windows 用户git config --global core.autocrlf true此配置会在检出代码时将 LF 转换为 CRLF提交时再转回 LF。Mac / Linux 用户git config --global core.autocrlf input此配置仅在提交时将 CRLF 转换为 LF检出时不做转换。常用命令命令行窗口# 查看用户名 git config user.name # 查看邮箱 git config user.email查看当前配置# 查看所有配置 git config --list # 查看全局配置 git config --global --list # 查看某一项配置 git config --global user.name命令用途常用参数git init初始化本地仓库—git clone克隆远程仓库url -b 分支 --depth 1git status查看工作区状态-s简短格式git add暂存文件.全部-p逐块确认git commit提交暂存区-m msg --amend修改上次提交git push推送至远端-u origin main -f强制git pull拉取并合并远端--rebase变基而非合并git fetch拉取远端不合并--all --prune清理已删分支git branch分支管理-d 名删除-r查看远端-a全部git checkout切换分支/恢复文件-b 名新建并切换文件丢弃修改git switch切换分支新版-c 名新建并切换git merge合并分支--squash --no-ffgit rebase变基-i HEAD~n交互式整理提交git stash暂存未提交修改push -m msg pop listgit log查看提交历史--oneline --graph --author名 -n 5git diff查看差异文件 --staged暂存区差异HEAD~1git reset回退提交/取消暂存--soft HEAD~1 --hard HEAD 文件git remote远端管理-v查看地址add removegit tag标签管理-a v1.0 -m msg -d 标签git cherry-pick拣选提交到当前分支commit SHAgit blame查看文件每行归属文件 -L 10,20仓库管理本章深入讲解 Git 仓库的内部结构、远程仓库交互、分支管理策略以及团队协作的核心工作流。4.1 仓库结构4.1.1 三层本地远端理解 Git 的数据流转是高效使用 Git 的关键。Git 将数据管理分为三个逻辑区域4.3 分支管理4.3.1 分支的概念与优势分支Branch是 Git 最强大的特性之一。它让你可以在不影响主线代码的情况下并行开发新功能、修复 Bug 或进行实验。4.3.2 分支操作查看所有本地分支当前分支前有 * 标记 git branch 查看所有分支包括远程分支 git branch -a 仅查看远程分支 git branch -r 查看分支最后一次提交信息 git branch -v 创建新分支但不切换 git branch feature/login 切换分支 git checkout feature/login 创建并切换到新分支 git checkout -b feature/login 或 git switch -c feature/login 基于指定提交创建分支 git checkout -b hotfix/urgent a1b2c3d 合并分支 先切换到目标分支如 master git checkout master 将指定分支合并到当前分支 git merge feature/login 安全删除仅删除已合并的分支 git branch -d feature/login 强制删除即使有未合并的改动 git branch -D feature/login 删除远程分支 git push origin --delete feature/login

相关新闻

腾讯位置服务AI时空大数据分析能力解析

腾讯位置服务AI时空大数据分析能力解析

腾讯位置服务AI时空大数据分析能力解析 一、位置服务产业宏观格局与核心议题 近年来,基于位置的服务(LBS)已从消费级应用延伸至产业互联网核心基础设施领域。腾讯地图作为腾讯产业互联网LBS基础设施的核心载体,整合了腾讯地图APP及…

2026/6/23 14:04:35阅读更多 →
Windows窗口管理终极指南:3分钟掌握PowerToys FancyZones高效工作法

Windows窗口管理终极指南:3分钟掌握PowerToys FancyZones高效工作法

Windows窗口管理终极指南:3分钟掌握PowerToys FancyZones高效工作法 【免费下载链接】PowerToys Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows 项目地址: https://gitcode.com/GitHub_Trending…

2026/6/23 14:04:35阅读更多 →
两种主流四层板叠层怎么选?全方位对比

两种主流四层板叠层怎么选?全方位对比

四层板是中小批量硬件项目最常用的多层 PCB 方案,兼顾布线密度、EMC 性能与制造成本,但绝大多数工程师开篇就卡在叠层选型,随意套用结构导致后期 EMC 整改、信号抖动、电源纹波超标。业内长期存在两套最主流四层板基础架构:顶层信…

2026/6/23 14:04:35阅读更多 →
Ubuntu 20.04 部署 code-server 生产级远程开发环境全指南

Ubuntu 20.04 部署 code-server 生产级远程开发环境全指南

1. 为什么非得在 Ubuntu 20.04 上跑 code-server?——不是为了“上云”,而是为了“可控的远程开发” 你有没有遇到过这种场景:手头只有一台老旧的 Windows 笔记本,但项目却要跑在 ARM 架构的嵌入式设备上;或者团队里新…

2026/6/23 17:45:19阅读更多 →
Hermes Agent v0.14.0:从命令行玩具到生产级AI助手的工程跃迁

Hermes Agent v0.14.0:从命令行玩具到生产级AI助手的工程跃迁

1. 项目概述:从“命令行玩具”到“可信赖工作伙伴”的质变 Hermes Agent v0.14.0 这个版本,标题里那句“让 Hermes 更像一个真正可长期使用的 Agent”,绝不是一句空洞的营销口号。它精准地戳中了此前所有用户——尤其是那些想把它当作日常生产…

2026/6/23 17:45:19阅读更多 →
React测试实战:用RTL构建用户行为契约而非实现快照

React测试实战:用RTL构建用户行为契约而非实现快照

1. 这不是“写个测试”而已:React应用测试的真实战场 你打开一个刚用 create-react-app 搭好的项目, src/App.test.js 里那行 expect(screen.getByText(/learn react/i)).toBeInTheDocument(); 像句吉祥话——它确实能跑通,但真以为这就…

2026/6/23 17:45:19阅读更多 →
Mac系统Python+Selenium自动化环境部署全攻略与避坑指南

Mac系统Python+Selenium自动化环境部署全攻略与避坑指南

1. 项目概述:为什么要在Mac上搭建PythonSelenium? 如果你是一名测试工程师、爬虫开发者,或者任何需要通过程序自动化操作网页的人,那么“Python Selenium”这个组合对你来说,就像木匠手里的锤子和锯子一样&#xff0c…

2026/6/23 17:45:19阅读更多 →
Jekyll静态站Canonical标签配置指南:解决重复内容SEO问题

Jekyll静态站Canonical标签配置指南:解决重复内容SEO问题

1. 项目概述:为什么Jekyll站点必须手动处理Canonical Link Tag 你在用Jekyll搭博客、文档站或企业官网时,有没有遇到过这种状况:同一内容在多个URL下被搜索引擎反复抓取——比如 /post/hello-world 、 /post/hello-world/ (带…

2026/6/23 17:45:19阅读更多 →
三层架构与双引擎协同:构建稳健高效的小红书数据采集系统

三层架构与双引擎协同:构建稳健高效的小红书数据采集系统

1. 项目概述:为什么需要“双引擎”来采集小红书? 做数据采集的朋友,尤其是跟移动端App打交道,应该都体会过那种“道高一尺,魔高一丈”的无力感。特别是像小红书这类国民级应用,其反爬虫机制可以说是武装到了…

2026/6/23 17:40:16阅读更多 →
【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体 一文搞定到底什么是智能体【人工智能】一文搞定到底什么是智能体一. LM,WorkFlow,Agent分别有什么么不同二. Agent的思考过程是怎样的三. Agent的五个核心部分1)LLM2)Prompt3)Me…

2026/6/23 7:04:52阅读更多 →
嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

1. 嵌入式GUI控件:从原理到实战的深度解析在嵌入式系统开发中,图形用户界面(GUI)的设计与实现往往是项目从“能用”到“好用”的关键一跃。不同于资源充沛的PC或移动平台,嵌入式设备的GUI需要在有限的CPU性能、内存空间…

2026/6/23 1:55:32阅读更多 →
Google AI Studio 300美元额度的真相与实战指南

Google AI Studio 300美元额度的真相与实战指南

1. 这300美金不是“送钱”,而是Google埋下的第一道技术门槛 你看到标题里那个醒目的“$300美金”时,第一反应可能是:又一个免费额度?领完就完事?我亲手试过——这300美金根本不是红包,而是一张入场券&…

2026/6/23 5:55:37阅读更多 →
2026年京东云 618 活动 Hermes Agent/OpenClaw配置Token Plan新手必看指南

2026年京东云 618 活动 Hermes Agent/OpenClaw配置Token Plan新手必看指南

2026年京东云 618 活动 Hermes Agent/OpenClaw配置Token Plan新手必看指南。OpenClaw是开源的个人AI助手,Hermes Agent则是一个能自我进化的AI智能体框架。阿里云提供计算巢、轻量服务器及无影云电脑三种部署OpenClaw 与 Hermes Agent的方案、百炼Token Plan兼容主流…

2026/6/23 0:00:38阅读更多 →
2026年北京电子沙盘制作公司深度评测:从技术选型到落地效果,谁在真正定义“数字+实体”的融合边界?

2026年北京电子沙盘制作公司深度评测:从技术选型到落地效果,谁在真正定义“数字+实体”的融合边界?

模块一:行业背景——百亿赛道爆发,北京市场的特殊性与选型困局2026年,电子沙盘行业已走过“要不要做”的讨论,进入“找谁做、怎么做”的深水区。据行业研究机构数据,2025年国内电子沙盘市场规模已突破85亿元&#xff0…

2026/6/23 0:00:38阅读更多 →
音视频场景下的 Java 开发者面试:技术与挑战

音视频场景下的 Java 开发者面试:技术与挑战

面试互联网大厂:从音视频场景看 Java 开发者的技能与挑战 在互联网大厂求职的面试中,Java 开发者往往需要面对严苛的技术问题。今天,我们将通过一位名叫燕双非的搞笑程序员与严肃的面试官之间的对话,看看在音视频场景下&#xff0…

2026/6/23 0:00:38阅读更多 →