Git 基础概念与核心操作入门笔记

7 阅读4分钟

一、Git 核心概念认知

Git 是一款开源的分布式版本控制系统,核心作用是追踪文件修改记录、协调多人间的代码协作,避免版本混乱和覆盖冲突。

常见的远程代码仓库平台:

  • GitHub:全球最大的开源代码托管平台,适合开源项目;
  • GitLab:可私有化部署,企业内部协作常用;
  • Gitee(码云):国内主流平台,访问速度快,支持公私库切换。

二、Git 环境搭建与远程连接

2.1 基础准备

  1. 安装 Git 客户端:Linux 系统可通过 yum install gitapt install git 一键安装,安装后需配置身份信息(避免提交时报错):
git config --global user.name "你的用户名"
git config --global user.email "你的仓库绑定邮箱"
  1. 远程仓库连接方式:
  • 账号密码连接:每次推送/拉取需输入账号密码,适用于临时访问;
  • SSH 密钥连接(推荐):一次配置永久免密,安全性更高,适合长期协作。

2.2 SSH 密钥连接核心步骤

  1. 生成 SSH 密钥对(默认路径 ~/.ssh/,无需额外配置参数):
ssh-keygen -t rsa -C "你的仓库绑定邮箱"
  1. 复制公钥内容(id_rsa.pub 文件),粘贴到远程仓库(GitHub/GitLab/Gitee)的 SSH 密钥配置页;

  2. 验证连接:ssh -T git@仓库域名(如 Gitee:ssh -T git@gitee.com),提示成功即配置完成。

三、Git 核心提交流程(本地 → 远程)

Git 提交遵循“工作区 → 暂存区 → 本地仓库 → 远程仓库”的流程,三步核心命令缺一不可,具体如下:

3.1 工作区 → 暂存区(git add)

暂存区用于临时存放待提交的修改文件,可精准控制提交范围:

git add 文件名  # 单个文件添加到暂存区
git add .      # 所有修改/新增/删除的文件批量添加到暂存区

3.2 暂存区 → 本地仓库(git commit)

本地仓库用于记录提交记录(含修改内容、注释、提交人等信息),必须添加提交注释便于追溯:

git commit -m "注释内容"  # 直接添加注释(推荐,简洁高效)
git commit               # 进入编辑器编写注释(需保存退出,适合多行文注释)

⚠️ 注意:此步骤仅完成本地提交,修改仍未同步到远程仓库。

3.3 本地仓库 → 远程仓库(git push)

将本地提交同步到远程仓库,完成最终推送:

git push origin 分支名  # 首次推送新分支需绑定跟踪关系:git push -u origin 分支名
git push               # 已绑定分支后,直接推送当前分支

辅助命令:git status

查看当前工作区状态,包括:所在分支、未跟踪文件、已修改未暂存文件、已暂存未提交文件,是日常操作高频命令:

git status  # 中文环境会自动显示中文提示,清晰直观

四、分支管理(多人协作核心)

4.1 分支的核心作用

默认主分支为 master(部分仓库为 main),用于存放稳定可发布的代码。分支可实现:

  • 多任务并行:不同开发人员分别在各自分支开发功能、修复 Bug,互不干扰;
  • 版本隔离:避免开发中的不稳定代码污染主分支,确保主分支可用性。

4.2 分支核心操作命令

操作需求命令说明
查看本地分支git branch带 * 标识当前所在分支
查看所有分支(含远程)git branch -a远程分支以 origin/xxx 显示
切换分支git checkout 分支名切换前确保本地修改已提交/暂存
创建并切换分支git checkout -b 新分支名本地快速创建分支,一步到位
拉取远程分支到本地git pull同步远程分支列表及内容,需先关联远程仓库

4.3 分支创建两种方式

  1. 远程创建分支 → 本地同步:

    1. 在仓库平台(浏览器)手动创建分支;
    2. 本地执行 git pull 同步远程分支;
    3. 执行 git checkout 分支名 切换到目标分支。
  2. 本地创建分支 → 推送到远程:

    1. 本地创建并切换:git checkout -b 新分支名
    2. 推送到远程并绑定跟踪:git push -u origin 新分支名

五、学习小结

Git 核心在于“版本追踪”和“协作隔离”:提交流程需严格遵循“add → commit → push”三步,确保每一步修改可追溯;分支管理是多人协作的核心,合理使用分支能大幅降低代码冲突风险,提升协作效率。