Git 基本操作(一文讲透)

更新时间:

💡一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论

  • 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于 Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...点击查看项目介绍 ;
  • 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;

截止目前, 星球 内专栏累计输出 82w+ 字,讲解图 3441+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2900+ 小伙伴加入学习 ,欢迎点击围观

前言

在编程世界中,版本控制是开发者与代码共舞的必备技能。想象一下,如果你正在开发一个项目,突然发现上周的代码更高效,或者需要同时尝试两种不同的设计方案,这时如果没有版本管理工具,你可能会陷入混乱。Git 基本操作正是解决这一问题的“时间机器”和“多线程工作台”,它让开发者能够自由穿梭于不同版本之间,同时高效协作。无论是初学者还是中级开发者,掌握 Git 的核心功能,都能显著提升代码管理的效率与信心。

本文将从 Git 的安装配置、核心工作流程、分支管理到团队协作,逐步展开讲解,并通过实际案例和命令示例,帮助读者快速上手 Git 的基础操作。


一、Git 的安装与配置

1.1 安装 Git

Git 的安装过程简单快捷。对于 Windows 用户,可以通过 Git 官网 下载安装包;Mac 用户可通过 Homebrew 命令 brew install git 安装;Linux 用户则使用 sudo apt-get install git(Ubuntu 系统)。安装完成后,可以通过终端输入 git --version 验证是否成功。

1.2 初始配置

安装完成后,需要设置全局用户信息,这相当于为你的 Git 身份创建“数字身份证”:

git config --global user.name "Your Name"  
git config --global user.email "your.email@example.com"  

这两个命令会记录你的身份信息,确保每次提交的代码都有明确的归属。


二、Git 核心工作流程

2.1 初始化仓库

假设你正在开发一个博客网站,首先需要为项目创建 Git 仓库:

mkdir my-blog  
cd my-blog  
git init  

git init 命令会生成一个隐藏的 .git 文件夹,这是 Git 的“记忆宫殿”,保存着所有版本记录。

2.2 跟踪文件变化

在项目中创建 index.html 并编写基础代码后,需要让 Git 开始跟踪文件:

git add index.html  

git add 类似于整理行李箱的动作——将文件的变化“装箱”,等待正式提交。

2.3 提交代码

整理好文件后,执行提交操作:

git commit -m "Initial commit: added index.html structure"  

git commit 是保存当前版本的“快照”,-m 参数后接的描述信息,帮助你未来快速回忆这一版本的改动内容。

2.4 查看状态与历史

随时检查工作目录状态:

git status  

若想回顾所有提交记录,可以使用:

git log  

git log 展示的提交历史,就像一本详细的成长日记,记录着代码的每一次进化。


三、分支管理:Git 的多线程能力

3.1 分支的概念

分支(Branch)是 Git 最具魅力的功能之一。想象你正在写作,主故事线(main 分支)已经写到一半,突然想尝试一个新情节——这时可以创建分支,就像在书页上画出一条分叉路:

git branch feature-article  

这条新分支 feature-article 会完全复制当前代码状态,供你自由探索。

3.2 切换与合并分支

在创建分支后,切换到新分支:

git checkout feature-article  

完成新功能开发后,回到主分支并合并改动:

git checkout main  
git merge feature-article  

合并操作如同将两条分叉路重新汇合,确保主故事线包含新情节的精华。

3.3 分支的删除与清理

若某分支已无用,可以删除它:

git branch -d feature-article  

但需谨慎使用 -D 参数强制删除未合并的分支,避免丢失未保存的改动。


四、远程协作:Git 的社交网络

4.1 远程仓库连接

在 GitHub 或 GitLab 创建远程仓库后,通过以下命令将其与本地仓库关联:

git remote add origin https://github.com/yourname/my-blog.git  

origin 是远程仓库的默认别名,类似给朋友起的昵称。

4.2 推送与拉取

首次将本地代码推送到远程仓库:

git push -u origin main  

-u 参数用于关联本地与远程分支,后续只需执行 git push 即可。
当团队成员更新了代码,可通过 git pull 获取最新版本:

git pull origin main  

这相当于与团队成员同步“故事线”的最新进展。

4.3 解决冲突

若多人修改同一文件的同一行代码,Git 会标记冲突:

Auto-merging index.html  
CONFLICT (content): Merge conflict in index.html  

此时需要手动编辑冲突文件,选择保留、合并或删除冲突代码,再提交解决后的版本。


五、常用命令速查表

以下表格整理了 Git 最核心的操作命令,方便读者快速查阅:

命令作用描述
git init初始化新仓库
git add <file>将文件加入暂存区
git commit -m "..."提交更改并记录描述
git branch <name>创建新分支
git checkout <branch>切换分支
git merge <branch>合并分支到当前分支
git push推送本地更改到远程仓库
git pull从远程仓库拉取最新更改
git log查看提交历史
git status查看当前仓库状态

六、实践案例:用 Git 管理博客项目

6.1 场景描述

假设你正在开发一个个人博客网站,需完成以下任务:

  1. 添加文章功能(分支 feature-article);
  2. 修复导航栏样式问题(分支 fix-navbar);
  3. 与团队成员协作优化登录页面。

6.2 操作步骤

  1. 初始化仓库并提交基础代码
    git init  
    git add .  
    git commit -m "Initial commit: basic HTML/CSS structure"  
    
  2. 创建并切换分支开发新功能
    git branch feature-article  
    git checkout feature-article  
    # 编写文章功能代码后提交  
    git commit -m "Added article page template"  
    
  3. 修复导航栏问题
    git checkout main  
    git branch fix-navbar  
    git checkout fix-navbar  
    # 修复代码后提交  
    git commit -m "Fixed navbar alignment issue"  
    
  4. 合并分支并推送
    git checkout main  
    git merge feature-article  
    git merge fix-navbar  
    git push origin main  
    

6.3 协作场景示例

若团队成员在 login-page 分支提交了新代码,你可以通过以下步骤同步:

git pull origin main  
git checkout login-page  
git commit -m "Improved login form validation"  
git push  

结论

Git 基本操作是开发者必须掌握的“代码管理语言”,它通过版本记录、分支管理和远程协作,为项目提供了灵活、安全的开发环境。从初始化仓库到团队协作,每个步骤都像是一次精心设计的舞蹈——Git 是舞台,代码是舞者,而开发者则是掌控节奏的指挥家。

通过本文的讲解和案例,希望读者能够建立对 Git 的整体认知,并在实际项目中逐步深入。记住,熟练使用 Git 需要实践,就像学习骑自行车一样,只有不断练习,才能真正掌握平衡的技巧。现在,是时候打开终端,用你手中的代码开启一次 Git 之旅了!

最新发布