Git 学习进阶
2026/8/24 13:43:51 网站建设 项目流程

Git 是一个分布式版本控制系统,用于跟踪文件变化、协作开发和管理代码历史。它是现代软件开发中最常用的工具之一。

Git 的核心作用

  • 版本管理:记录每一次修改,可以随时回溯到历史版本。

  • 多人协作:多个开发者可以同时工作,合并彼此的代码。

  • 分支开发:可以创建独立分支开发新功能,不影响主代码。

  • 代码安全:分布式架构让每个开发者都有完整的仓库副本。

    基本概念

    概念说明
    仓库(Repository)存放项目文件及历史记录的地方
    提交(Commit)一次版本快照
    分支(Branch)独立的开发线
    合并(Merge)将不同分支的修改合并
    远程仓库(Remote)托管在服务器上的仓库,如 GitHub、GitLab
    工作区 / 暂存区编辑文件的地方 / 暂存要提交的修改

常用命令

# 初始化仓库 git init # 克隆远程仓库 git clone <仓库地址> # 查看状态 git status # 添加文件到暂存区 git add <文件名> # 添加指定文件 git add . # 添加所有修改 # 提交 git commit -m "提交说明" # 查看提交历史 git log --oneline # 创建并切换分支 git checkout -b <分支名> # 切换分支 git checkout <分支名> # 合并分支 git merge <分支名> # 拉取远程更新 git pull # 推送到远程 git push origin <分支名> # 查看远程仓库地址 git remote -v

一、下载 Git

1. 官方下载(可能较慢)

  • 官网地址:Redirecting…

  • 根据操作系统选择对应版本。

2. 国内镜像(推荐,速度快)

  • 淘宝 npmmirror 镜像(Windows 版)
    CNPM Binaries Mirror
    选择最新版本,下载Git-xxx-64-bit.exeGit-xxx-32-bit.exe

  • 华为云镜像
    Index of git-for-windows-local

  • 腾讯软件源
    https://mirrors.cloud.tencent.com/git-for-windows/

3. 安装配置用户名和邮箱

打开终端(Windows 用 Git Bash),执行:

git config --global user.name "你的名字" git config --global user.email "你的邮箱@example.com" --global 表示全局配置,对所有仓库生效。如果想对单个仓库单独配置,去掉 --global 并在该仓库目录下执行。 ssh-keygen -t ed25519 -C "你的邮箱@example.com" 一路回车即可,这样生成的是ssh公钥,方便后续配置,注意公钥的位置

4. 查看配置

git config --list

或单独查看:

git config user.name git config user.email

流程概述

  1. master创建个人feature分支。

  2. feature分支上进行开发并提交。

  3. 开发期间定期将master的最新更新同步到feature分支(避免合并时冲突过多)。

  4. 推送feature分支到远程仓库。

  5. 在代码托管平台(GitHub/GitLab)发起Pull Request / Merge Request,请求将feature分支合并到master

  6. 管理人员或同事进行代码审查,讨论并可能要求修改。

  7. 审查通过后,由有权限的人将feature分支合并到master

详细操作步骤

1. 创建自己的 feature 分支

# 切换到 master 分支 git checkout master # 拉取远程 master 的最新代码 git pull origin master # 从 master 创建并切换到新的 feature 分支 git checkout -b feature/your-feature-name 分支命名建议:feature/xxx、fix/xxx、hotfix/xxx 等,清晰表达分支用途。

2. 在 feature 分支上开发

# 查看修改状态 git status # 添加修改到暂存区 git add . # 提交到本地仓库 git commit -m "feat: 添加了某个功能" 提交信息建议遵循规范,如 feat:、fix:、docs: 等,便于阅读和生成 changelog。

3. 同步 master 最新代码到 feature 分支

在开发过程中,master分支可能被其他人更新。为了避免最终合并时出现大量冲突,需要定期将master的最新提交合并到自己的feature分支。

方式一:使用 merge(推荐)
# 确保当前在 feature 分支 git checkout feature/your-feature-name # 拉取远程 master 最新代码 git fetch origin master # 将 master 合并到当前分支 git merge origin/master

如果有冲突,Git 会提示,手动解决冲突后:

git add . git commit -m "merge: 同步 master 最新代码"
方式二:使用 rebase(保持线性历史)
git checkout feature/your-feature-name git fetch origin master git rebase origin/master

注意:rebase 会改写提交历史,如果该 feature 分支只有你一个人使用,可以安全使用;如果多人共用同一个 feature 分支,不要使用 rebase,否则会破坏他人的工作。 推荐使用 merge,因为更安全,不会改写历史。

4. 推送 feature 分支到远程仓库

git push origin feature/your-feature-name 如果是第一次推送该分支: git push -u origin feature/your-feature-name

5. 发起合并请求(Pull Request / Merge Request)

  • GitHub:在仓库页面点击 “Pull requests” → “New pull request”,选择base: mastercompare: feature/your-feature-name,填写标题和描述,然后创建。

  • GitLab:点击 “Merge Requests” → “New merge request”,选择源分支和目标分支,填写信息后提交。

在描述中建议说明:

  • 实现了什么功能 / 修复了什么问题

  • 涉及的模块或文件

  • 测试情况

  • 是否需要特别注意的事项

6. 代码审查与修改

审查者会在 PR/MR 中提出评论。你可能需要根据反馈进行修改:

# 在本地 feature 分支上修改代码 git add . git commit -m "fix: 根据审查意见修改" # 推送到远程(同一个分支) git push origin feature/your-feature-name 新的提交会自动出现在 PR/MR 中,无需重新发起。

7. 合并到 master

审查通过后,通常由项目管理员或具有权限的成员执行合并:

  • 在 GitHub/GitLab 页面上点击 “Merge pull request” / “Merge”

  • 可以选择合并方式:

    • Create a merge commit:保留分支的完整历史。

    • Squash and merge:将 feature 分支上的所有提交压缩成一个提交再合并,使 master 历史更简洁。

    • Rebase and merge:将 feature 分支的提交变基到 master 上,保持线性历史。

合并完成后,可以删除远程和本地的 feature 分支:

# 删除远程分支 git push origin --delete feature/your-feature-name # 删除本地分支 git checkout master git branch -d feature/your-feature-name

注意事项与最佳实践

  1. 保持 feature 分支与 master 同步:不要等到最后才同步,否则冲突会堆积。

  2. 一个分支只做一件事:避免在一个 feature 分支中包含多个不相关的功能。

  3. 提交信息清晰:方便审查者理解每个提交的意图。

  4. 不要直接在 master 上开发:始终通过分支和 PR/MR 合并。

  5. 使用.gitignore:避免提交不必要的文件(如编译产物、本地配置)。

  6. 保护 master 分支:在 GitHub/GitLab 中设置 master 分支保护,禁止直接推送,要求 PR 审查。

  7. 定期清理已合并的分支:保持仓库整洁。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询