Git基础玩法简单描述

Git 的三个核心区域

工作区

开发者直接编辑文件的目录,所有未跟踪或修改的文件均处于此区域。文件改动后需通过 git add 转入暂存区。

暂存区

临时存储修改的中间区域,使用 git add 将工作区的变动添加至此。允许分批提交,避免直接提交未完成的更改。

版本库

通过 git commit 将暂存区内容永久保存为版本快照。每个提交生成唯一哈希值,支持回退和历史追踪。


Git 基础操作指令

环境配置

  • 版本检查:git --version
  • 设置用户名:git config --global user.name "YourName"
  • 设置邮箱:git config --global user.email "email@example.com"

仓库管理

  • 初始化:git init
  • 添加文件到暂存区:
    • 单文件:git add filename
    • 全部文件:git add .
  • 提交到版本库:git commit -m "Message"
  • 状态检查:git status -s
    • A:新文件首次暂存
    • ??:未跟踪文件
    • 红色 M:已修改未暂存
    • 绿色 M:已修改且暂存

撤销与恢复

  • 暂存区覆盖工作区:git restore file
  • 移除暂存区文件:git rm --cached file
  • 查看提交历史:git log --oneline
  • 版本回退:git reset --hard commit_hash

分支管理

基础操作

  • 查看分支:git branch*标记当前分支)
  • 创建分支:git branch new_branch
  • 切换分支:git checkout branch_name
  • 合并分支:先切换到目标分支,执行 git merge source_branch
  • 删除分支:git branch -d branch_name

远程仓库协作(以 Gitee 为例)

SSH 密钥配置

生成密钥:ssh-keygen -t ed25519 -C "Gitee SSH Key"

仓库连接与推送

  • 首次关联远程仓库:git remote add origin https://gitee.com/user/repo.git
  • 推送代码:git push -u origin master
  • 冲突处理:
    • 拉取远程更新:git pull origin master
    • 强制合并:git pull --rebase origin master

克隆与多人协作

  • 克隆仓库:git clone repo_url
  • 验证远程连接:git fetch origin
  • 查看远程仓库:git remote -v

高级场景

忽略文件

创建 .gitignore 文件,列出需忽略的文件/目录模式,如:

复制代码
*.log
node_modules/

云端与本地冲突解决

当远程仓库更新领先于本地时:

  1. 拉取最新代码:git pull origin master
  2. 解决冲突后重新提交并推送

强制推送警告

避免直接使用 git push --force,可能导致团队代码丢失

Git 基础知识与操作指南

Git 是一个分布式版本控制系统,用于高效管理代码变更。核心概念包括三个区域:工作区、暂存区和版本库。下面我将基于您提供的信息,结构化解释这些概念和常用指令,确保内容清晰可靠。

一、Git 的三个区域
  • 工作区(Working Directory):您实际开发时操作的文件夹,包含所有文件修改。例如,您在本地编辑代码文件。
  • 暂存区(Staging Area):保存准备提交的文件变更。添加文件到暂存区后,Git 会跟踪这些改动,但尚未永久保存。
  • 版本库(Repository):提交暂存区内容后生成的永久快照。每个提交对应一个唯一版本号,便于历史回溯。
二、常用 Git 指令

以下指令基于标准 Git 语法,我已整理为分类列表。使用命令行时,确保在 Git 仓库目录下执行。

  1. 配置与初始化

    • 检查 Git 版本:

      shell 复制代码
      git -v
    • 配置全局用户名称和邮箱(仅需设置一次):

      shell 复制代码
      git config --global user.name "您的名称"
      git config --global user.email "您的邮箱"
    • 初始化新仓库:

      shell 复制代码
      git init
  2. 文件管理

    • 添加文件到暂存区:

      • 添加指定文件:

        shell 复制代码
        git add 文件名
      • 添加所有修改的文件:

        shell 复制代码
        git add .
    • 提交文件到版本库:

      shell 复制代码
      git commit -m "注释内容"
    • 查看文件状态(-s 参数简化输出):

      shell 复制代码
      git status -s
      • 状态符号含义:
        • A:新文件,已添加到暂存区。
        • ??:未添加到暂存区。
        • 红色 M:文件已修改,但未提交到暂存区。
        • 绿色 M:文件已修改,且已提交到暂存区。
    • 恢复工作区文件(用暂存区覆盖工作区):

      shell 复制代码
      git restore 目标文件
    • 移除暂存区文件(保留工作区文件):

      shell 复制代码
      git rm --cached 目标文件
  3. 历史与回退

    • 查看提交历史(简化输出):

      shell 复制代码
      git log --oneline
    • 回退到指定版本:

      shell 复制代码
      git reset --hard 版本号
      • 注意:回退后,当前版本之后的提交历史会隐藏,但可通过版本号再次回退。
    • 忽略文件:创建 .gitignore 文件,列出需忽略的文件或目录(如临时文件)。

  4. 分支管理

    • 查看所有分支(* 表示当前分支):

      shell 复制代码
      git branch
    • 创建新分支:

      shell 复制代码
      git branch 分支名
    • 切换到分支:

      shell 复制代码
      git checkout 分支名
    • 合并分支(先切换到主分支):

      shell 复制代码
      git merge 子分支名
    • 删除已合并的子分支:

      shell 复制代码
      git branch -d 子分支名
三、远程仓库连接(以 Gitee 为例)

远程仓库如 Gitee 允许代码托管和协作。操作前需生成 SSH 密钥并配置。

  1. 生成 SSH 公钥

    • 在命令行执行:

      shell 复制代码
      ssh-keygen -t ed25519 -C "Gitee SSH Key"
    • 完成后,公钥文件(通常为 id_ed25519.pub)需添加到 Gitee 账户设置中。

  2. 连接远程仓库

    • 首次连接:

      shell 复制代码
      git remote add origin 远程仓库地址
    • 推送代码到云端(如主分支):

      shell 复制代码
      git push -u origin "master"
    • 查看当前远程仓库配置:

      shell 复制代码
      git remote -v
    • 验证连接:

      shell 复制代码
      git fetch 仓库名称
      • 作用:检查连接状态,并获取远程最新数据到本地。
  3. 云端与本地同步

    • 当云端文件数大于本地时,需先拉取再推送:

      • 拉取代码(不合并):

        shell 复制代码
        git pull 远程仓库别名 分支名
      • 拉取并合并(推荐):

        shell 复制代码
        git pull --rebase 远程仓库别名 "分支名"
    • 克隆云端仓库到本地:

      shell 复制代码
      git clone 远程仓库地址
四、多人协作流程

多人开发时,遵循以下步骤避免冲突:

  1. 克隆仓库

    shell 复制代码
    git clone 他人远程仓库地址
  2. 修改与提交

    • 本地修改代码后,务必提交到版本库:

      shell 复制代码
      git add .
      git commit -m "修改描述"
  3. 推送更新

    • 连接远程仓库(如未配置):

      shell 复制代码
      git remote add origin 远程仓库地址
    • 推送代码:

      shell 复制代码
      git push -u origin "master"
    • 如果云端代码不同,那就得先拉取再推送(使用 git pull --rebase)。

Git 的核心在于理解三个区域的流转:工作区 → 暂存区 → 版本库。

相关推荐
在未来等你12 分钟前
Elasticsearch面试精讲 Day 17:查询性能调优实践
大数据·分布式·elasticsearch·搜索引擎·面试
大数据CLUB3 小时前
基于spark的澳洲光伏发电站选址预测
大数据·hadoop·分布式·数据分析·spark·数据开发
ratbag6720134 小时前
当环保遇上大数据:生态环境大数据技术专业的课程侧重哪些领域?
大数据
Hungry_Shark4 小时前
IDEA版本控制管理之使用Gitee
java·gitee·intellij-idea
计算机编程小央姐5 小时前
跟上大数据时代步伐:食物营养数据可视化分析系统技术前沿解析
大数据·hadoop·信息可视化·spark·django·课程设计·食物
智数研析社6 小时前
9120 部 TMDb 高分电影数据集 | 7 列全维度指标 (评分 / 热度 / 剧情)+API 权威源 | 电影趋势分析 / 推荐系统 / NLP 建模用
大数据·人工智能·python·深度学习·数据分析·数据集·数据清洗
潘达斯奈基~6 小时前
《大数据之路1》笔记2:数据模型
大数据·笔记
寻星探路6 小时前
数据库造神计划第六天---增删改查(CRUD)(2)
java·大数据·数据库
nightunderblackcat8 小时前
新手向:Git下载全攻略
git
翰林小院8 小时前
【大数据专栏】流式处理框架-Apache Fink
大数据·flink