在这里插入图片描述
在这里插入图片描述

前言、Git是什么,有什么用?

写代码的时候,大概率我们都遇到过这些糟心时刻:熬到半夜改代码,越改越乱,想找回两小时前的版本,靠手动复制粘贴存的文件夹却翻遍也找不到;和同事协作开发,俩人同时改了同一个文件,合并时代码乱作一团,删谁的都觉得可惜;花半个月写的功能,突然发现思路全错,想删掉重写又怕后续需要,留着又占空间、看着闹心……
在这里插入图片描述

如果我们有时光机就好了,每次想找到当时某个之前的时间段的代码就穿越回去,CV一份在会到现在,每次多人合作的时候一人分一条时间线正常工作,等成功或者要讨论的时候再穿越到主时间线进行探究探讨。
在这里插入图片描述

其实Git可以说是我们程序员的时光机

它的核心逻辑,是用空间换时间,工作原理简单又高效:就是我们在每次完成靠谱的代码修改后,让Git保存下当前所有代码的完整状态,就像在这个时间节点给代码插了一个“信标节点”。哪怕后续代码改得一塌糊涂,只要在Git中找到对应的信标节点,就能一键让代码穿越回当时的状态,瞬间复原,再也不用为改崩的代码束手无策,单人开发时,Git是我们可靠的“后悔药”。

在团队协作时,Git的价值会被无限放大。它能将整个项目仓库拆分成多条平行的开发时间线,给团队里每个人分配独立的“专属时间线”,你可以在自己的时间线上随意修改、大胆试错,只要不随意合并,就绝不会扰乱其他人的开发进度。等我们完成开发、确认代码无误后,再将自己时间线的成果合并到项目主时间线即可。这个过程中,Git会智能对比所有人的代码修改:能自动合并、不产生冲突的部分,会一键整合;存在冲突、无法自动合并的部分,会精准提示冲突位置,让你和同事针对性调整。从此告别多人围着一台电脑抢改代码、最后合出“四不像”的尴尬,让协作更有序。

说白了,Git解决的就是程序员最头疼的两个问题:怕错,怕乱

  • 怕错?它帮我们留好每一步退路,再离谱的修改都能退回去,试错成本直接降到0。
  • 怕乱?它把多人协作的规则理得明明白白,你干你的、我干我的,最后顺顺利利合到一起,效率拉满还不吵架。

不管你是刚入门的编程新手,还是已经写了好几年代码的老手,只要你不想再被“代码改崩了找不回来”“多人合代码合到崩溃”的问题折磨,Git就是你必须抱牢的“大腿”。它不是什么花里胡哨的技能,就是程序员的“基础生存工具”——就像厨师的菜刀、司机的方向盘,用顺了,你会发现:原来写代码可以这么安心,这么省心。

接下来的系列博客,我们直接上实操,如何操作自己的时光机Git,让自己写代码的时候如同赛博上帝一样,从怎么给代码“拍快照”,到怎么回滚错误版本,再到怎么和多条时间线上的同事愉快协作,把Git的核心玩法掰开揉碎了讲,看完就能上手,从此和代码混乱说再见。
在这里插入图片描述


第一步、安装Git

一、CentOS 系统安装 Git

CentOS 分为 7 系列和 8/9 系列,安装方式略有差异,以下是两种常见方法:

方法1:通过 YUM 包管理器安装

  1. 更新软件源(可选)
    先更新系统包索引,确保安装最新版本:

    sudo yum update -y
    
  2. 安装 Git
    CentOS 7:

    sudo yum install git -y
    

    CentOS 8/9(需启用 PowerTools 仓库):

    sudo dnf install git -y
    
  3. 验证安装

    git --version
    

方法2:编译安装最新版本(如需高版本 Git)
若 YUM 安装的版本过旧,我们可以通过手动编译:

# 安装依赖
sudo yum install -y gcc make curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker

# 下载最新 Git 源码(以 2.43.0 为例,可替换为最新版本)
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.43.0.tar.gz

# 解压并编译
tar -zxf git-2.43.0.tar.gz
cd git-2.43.0
make prefix=/usr/local/git all
sudo make prefix=/usr/local/git install

# 添加环境变量
echo "export PATH=/usr/local/git/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc

# 验证
git --version

二、Ubuntu 系统安装 Git

Ubuntu 就方便的多了,我们可以直接 APT 包管理器安装:

方法1:基础安装(默认版本)

  1. 更新软件源

    sudo apt update -y
    
  2. 安装 Git

    sudo apt install git -y
    
  3. 验证安装

    git --version
    

方法2:安装最新版本
若需要比官方源更新的 Git 版本,可添加 PPA 仓库:

# 添加 Git 官方 PPA
sudo add-apt-repository ppa:git-core/ppa -y
sudo apt update -y

# 安装/升级 Git
sudo apt install git -y

# 验证
git --version

三、Windows 系统安装 Git

方法:通过官方安装包安装

  1. 下载安装包
    访问 Git 官方下载页面:https://git-scm.com/download/win,页面会自动识别你的系统并推荐对应版本(32/64位),点击下载即可。
    在这里插入图片描述

  2. 运行安装程序
    双击下载的 .exe 文件,按照安装向导操作:

    • 大部分选项保持默认即可。
    • 重点注意:
      • “Choosing the default editor used by Git”:可选择熟悉的编辑器(如 VS Code、VS Studio),默认是 Vim。
        在这里插入图片描述

      • “Adjusting the name of the initial branch in new repositories”:这里是默认分支的名字我们选第二个默认的 main 即可。
        在这里插入图片描述

      • “Choosing the terminal emulator”:三个选项的意思分别是

          1. Use Git from Git Bash only:只允许在 Git 自带的 “Git Bash” 终端里使用 Git,不会修改系统环境变量。
          1. Git from the command line and also from 3rd-party software:把 Git 的 “精简版命令” 添加到系统环境变量,既可以在命令提示符 / VS Code 终端用git,也能被 VS Code 等第三方软件识别。
          1. Use Git and optional Unix tools from the Command Prompt:把 Git 和额外的 Unix 工具(比如find、sort)都加到系统环境变量。
            根据需要选择即可,可以和图中选择相同:

        在这里插入图片描述

      • 其余步骤直接下一步,最后点击 “Install” 完成安装。

  3. 验证安装
    按下 Win + R,输入 cmd 打开终端,执行以下命令,若输出 Git 版本号则安装成功:

    git --version
    

    注:若显示外部命令可能是自动环境变量没有配置成功,要自己配置一下。
    此电脑➡属性➡高级系统设置➡环境变量➡系统变量➡Path➡编辑
    新建两个,如下图👇:
    在这里插入图片描述


第二步、全局配置

不管是Linux还是Windows,安装完Git后,第一步要做的是配置用户身份(Git需要知道是谁提交了代码),这是所有操作的前提。

# 配置全局用户名(会显示在提交记录里)
git config --global user.name "你的用户名"
# 配置全局邮箱(需与 GitHub/Gitee 等平台的账号邮箱一致)
git config --global user.email "你的gitee/github账号的邮箱"
  • --global:表示这是全局配置,即所有本地 Git 仓库都会使用这个用户信息;如果去掉该参数,仅对当前仓库生效。
  • 用户名可以自定义(比如你的昵称),但邮箱建议与你 GitHub/Gitee 等代码平台的账号邮箱一致,否则提交记录可能无法关联到你的账号(就是绿框框不会变绿)。

配置完成后,最好验证是否生效,避免输错:

# 查看已配置的用户名
git config user.name
# 查看已配置的邮箱
git config user.email

执行后会直接输出你配置的用户名/邮箱,确认和输入的一致即可。

额外注意事项

  • Windows 系统:如果用户名/邮箱包含空格,必须用双引号 " 包裹(和 Linux/Mac 一致),比如 git config --global user.name "Zhang San"
  • 若后续想修改配置,直接重新执行上述命令即可(新值会覆盖旧值)。
  • 若想删除全局配置,可执行:
    git config --global --unset user.name
    git config --global --unset user.email
    

第三步、在不同系统中创建我们第一个Git仓库

1. Linux系统(Ubuntu为例)

Ubuntu 安装完 Git 并配置完用户身份后,我们再次验证一下

# 查看所有全局配置(会列出用户名、邮箱、默认编辑器等)
git config --global --list

输出示例(确认包含你的用户名和邮箱即可):

user.name=你的昵称
user.email=你的邮箱@xxx.com

修改默认编辑器(可选)
如果不想用默认的 Vim,可改为 VS Code,我是通过VSCode远程连接的所以我这里提一嘴。

# 配置 Git 默认编辑器为 VS Code
git config --global core.editor "code --wait"

验证:执行 git config core.editor,输出 code --wait 则配置成功。
在这里插入图片描述
初始化Git仓库
接下来我们创建一个文件夹,并进入。

mkdir gitstudy
cd gitstudy

我们在这个文件夹中输入。

git init

执行后会看到这样的输出(提示初始化了空的Git仓库):

Initialized empty Git repository in /home/你的用户名/gitstudy/.git/

这就意味着我们把这个普通文件夹,变成了受Git版本控制的仓库

此时执行:

la

lals -a 的简写,用于显示所有文件,包括隐藏文件)
就能看到一个隐藏文件夹 .git —— 这个文件夹是Git的核心目录,存储了仓库的所有版本信息、配置、提交记录等关键数据,千万不要手动修改或删除
在这里插入图片描述
首次提交
初始化仓库后,我们可以创建一个文件并完成首次提交,感受Git的“快照”功能:

  1. 创建一个测试文件:

    # 创建并写入内容到 readme.md 文件
    echo "# Git学习测试仓库" > Readme.md
    
  2. 查看文件状态(确认Git能识别新文件):

    git status
    

    输出会提示 readme.md 是「未跟踪的文件」(Untracked files),说明Git发现了新文件,但还没纳入版本控制。
    在这里插入图片描述

  3. 暂存并提交文件:

    # 暂存文件(把文件加入待提交队列)
    git add Readme.md
    # 提交文件(拍快照,-m 后跟提交说明,必填)
    git commit -m "初始化仓库,添加Readme.md"
    

    成功提交后会看到类似输出:
    
[main (root-commit) 8f7e5d1] 初始化仓库,添加readme.md
1 file changed, 1 insertion(+)
create mode 100644 readme.md

  4. 查看提交记录:

    git log
    

    能看到刚才的提交记录,包括提交ID、作者、时间、提交说明,这就是Git帮我们保存的“时光节点”。
    在这里插入图片描述

注意

  • 执行 git init 后,.git 文件夹默认隐藏,必须用 ls -a/la 才能看到,不要误以为没创建成功。
  • 首次提交必须写 -m "提交说明",否则Git会打开默认编辑器(如Vim/VS Code)要求补写。
  • .git 文件夹是Git的核心,不要轻易更改这个文件夹中的内容并且删除后仓库的所有版本记录都会丢失,操作时务必注意。

2. Windows下VS Code

确认Git关联
打开VS Code,按下 Ctrl+Shift+P 调出命令面板,输入 Git: Show Git Output,若显示「Git version 版本号」说明VS Code已识别Git。

若提示「Git not found」,先按前文配置Git环境变量,重启VS Code即可。

在这里插入图片描述
初始化Git仓库
打开本地文件夹作为工作区:

  • 点击VS Code左侧「资源管理器」→「打开文件夹」,选择一个空文件夹(比如 D:\gitstudy),点击「选择文件夹」。
  1. 点击左侧边栏「源代码管理」图标(分支形状,快捷键 Ctrl+Shift+G
    在这里插入图片描述

  2. 点击「初始化仓库」,若弹窗确认「是否将此文件夹初始化为Git仓库」,点击「初始化」
    在这里插入图片描述

  3. 我们打开VS Code的命令行:
    在这里插入图片描述
    输入下面的指令👇

    dir /a # Windows下显示所有文件(包括隐藏文件)
    

    输出示例(能看到 .git 文件夹,说明初始化成功):
    在这里插入图片描述

创建文件并完成首次提交
4. 在VS Code中新建文件:点击「资源管理器」→ 右键空白处 →「新建文件」,命名为 readme.md
5. 编辑文件内容:输入 # Git学习测试仓库(VS Code Windows版),按下 Ctrl+S 保存。
在这里插入图片描述

  1. 回到「源代码管理」面板,能看到 readme.md 标为「未暂存更改」(红色):
    • 点击文件旁的「+」号暂存文件。
    • Commit上方输入框填写提交信息:初始化仓库,添加readme.md
    • 点击Commit图标完成提交。

在这里插入图片描述

  1. 验证提交结果:

我们可以直接在 GRAPH (这是VS Code Git插件的可视化提交记录)看到我我们提交的记录

  • “初始化仓库,添加readme.md”:是我们刚才写的提交说明。
  • “main”:代表当前处于main分支(Git的默认主分支)。
  • 这个蓝色卡片就是一个“版本节点”,后续每次提交都会新增一个卡片,能直观看到版本的时间线。

我们也可以通过VS Code 下方的命令行来验证

  • 在VS Code终端执行:
    git log
    

这是Git终端命令的文本形式提交记录

  • commit 2d751b...:是这次提交的唯一ID(类似版本号,后续回滚版本会用到)。
  • HEAD -> main:表示当前工作目录正处于main分支的这个提交版本。
  • Author/Date:是你配置的Git用户名/邮箱,以及提交时间。
  • 最后一行是提交说明,和可视化界面的内容一致。
    在这里插入图片描述
    注意
  • Windows下查看 .git 隐藏文件夹,除了终端 dir /a,也可在文件夹中勾选「查看」→「隐藏项目」。
  • 提交时若忘记写提交信息,VS Code会弹窗提示「提交信息不能为空」,需补填后再提交。
  • .git 文件夹是Git核心,Windows下不要手动修改/删除,尤其注意不要用杀毒软件误删,否则版本记录全部丢失。
  • VS Code远程连接Windows服务器时,需确保服务器端已安装Git,且VS Code的「Remote - SSH」插件已配置好Git路径。

3. Windows下Visual Studio(VS)

新建/打开Git仓库

  1. 打开Visual Studio,起始页点击「创建新项目」→ 选择「空白解决方案」(或直接打开已有文件夹),命名为 GitStudy,存储路径选 D:\gitstudy,点击「创建」。
  2. 点击VS顶部菜单栏「Git」→「创建Git仓库」。
  3. 弹窗中选择「本地仓库」,确认路径为 D:\gitstudy,点击「创建」。
    • 此时VS右下角会显示「main」分支,说明仓库初始化成功。

这里我在VS Code下已经创建了我直接打开

验证.git文件夹
打开文件资源管理器,进入 D:\gitstudy,勾选「查看」→「隐藏项目」,能看到 .git 文件夹,代表Git仓库创建完成。
在这里插入图片描述

创建文件并完成首次提交

  1. 在VS的「解决方案资源管理器」中,右键解决方案「GitStudy」→「添加」→「新建项」,选择「Markdown文件」,命名为 readme1.md,点击「添加」。
  2. 编辑文件内容:输入 # Git学习测试仓库(Visual Studio Windows版),按下 Ctrl+S 保存。
  3. 点击VS右侧「更改」选项卡(或按 Ctrl+0,G):
    • 能看到 readme1.md 显示为「未暂存」,勾选文件前的复选框(暂存文件)。
    • 在「提交信息」输入框填写:初始化仓库,添加readme1.md
    • 点击「提交」按钮(若想直接推送到远程,可勾选「提交并推送」)。

在这里插入图片描述
在这里插入图片描述

  1. 查看提交记录:

    • 点击VS顶部菜单栏「Git」→「查看分支历史记录」
      在这里插入图片描述

    • 会弹出「提交历史」面板,能看到刚才的提交记录,包含提交ID、作者、时间、提交说明。

    在这里插入图片描述

注意

  • VS初始化仓库后,默认会将解决方案文件(.sln)、项目文件等自动纳入跟踪,无需手动添加。
  • 首次提交若未配置用户信息,VS会自动弹窗,填写和Git全局配置一致的「用户名+邮箱」即可。
  • 不要手动修改 .git 文件夹,尤其是VS正在运行时,易导致文件锁定或仓库损坏。
  • Windows下VS若提示「Git操作失败」,大概率是仓库路径含中文/空格(如「D:\我的文件夹\gitstudy」),建议改为纯英文路径(如 D:\gitstudy)。

4、Unity中使用Git管理项目(嘿嘿)

创建一个测试项目

  1. 打开Unity Hub,点击「新建项目」,选择合适的模板(如「2D Core」/「3D Core」),命名为 UnityGitStudy,存储路径选 D:\unitygitstudy(建议纯英文无空格路径),点击「创建」。
  2. 等待Unity加载完成,进入项目编辑器界面,确认项目可正常打开。
    在这里插入图片描述Unity额外配置(核心!)
  3. 版本控制模式配置:
    • 点击Unity顶部菜单栏「Edit」→「Project Settings」,在弹出的设置面板中找到「Version Control」。
    • 将「Mode」选项从默认的「Disabled」改为「Visible Meta Files」,点击右上角「Apply」保存。
    • 作用:Unity会为每个资源文件生成对应的 .meta 文件,Git通过该文件识别资源的唯一标识,实现版本对比、合并等核心操作,缺少 .meta 文件会导致资源引用丢失。
      在这里插入图片描述
  4. 资源编码格式配置:
    • 在「Project Settings」面板中找到「Editor」选项。
    • 将「Asset Serialization」下的「Mode」改为「Force Text」,点击「Apply」保存。
    • 作用:强制Unity以文本格式序列化资源文件(如场景、预制体),而非二进制格式,这样Git能清晰识别文件的修改内容,方便查看提交差异。
      在这里插入图片描述
  5. 配置.gitignore文件(关键!过滤无用文件):
    • Unity项目中仅需跟踪 Assets(项目资源)和 ProjectSettings(项目配置)两个核心文件夹,其余如 LibraryTemp 等均为运行时生成的临时文件,无需纳入版本控制。
      在这里插入图片描述
    • 之后我们打开VS Code,将Unity项目根目录(D:\unitygitstudy)拖入编辑器。
    • 在根目录新建名为 .gitignore 的文件(注意前缀有.,无后缀),粘贴以下内容并保存:
# Unity自动生成的临时文件夹
Library/
Temp/
Logs/
UserSettings/

# 编辑器配置文件
.vscode/
.idea/

# 自动生成的工程文件
*.sln
*.csproj
*.userprefs
*.unityproj

# 系统文件
*.DS_Store
# 可选:若不需要跟踪Packages文件夹(依赖包),可取消注释
# Packages/
  • 作用:告诉Git忽略上述路径/文件,避免提交无用内容,减小仓库体积,防止冲突。
    在这里插入图片描述
    初始化Git仓库并验证
  1. 打开Unity项目根目录(D:\unitygitstudy),在空白处右键选择「在终端中打开」(或通过VS Code的终端)。
  2. 执行以下命令,验证Git环境并初始化仓库:
# 验证Git是否安装成功
git --version
# 初始化本地Git仓库
git init
# 查看当前文件状态(可看到Assets、ProjectSettings等未跟踪文件)
git status
  • 执行后终端会提示「Initialized empty Git repository in D:/unitygitstudy/.git/」,说明仓库初始化成功。
  • git status 会列出未被忽略的文件,确认 .gitignore 生效(如Library文件夹未出现在列表中)。
    在这里插入图片描述
    首次提交项目代码
  1. 执行命令将所有未忽略的文件加入暂存区:
git add ./
  • 若想单独添加某文件夹(如仅Assets),可执行 git add Assets/
  1. 执行提交命令,填写有意义的提交信息:
git commit -m "初始化Unity Git测试项目:配置Version Control+Force Text,添加.gitignore"
  • 提交成功后,终端会显示提交的文件数量、修改行数等信息。
  1. 查看提交记录,确认提交成功:
git log
  • 会显示提交ID、作者、时间、提交说明,验证首次提交完成。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意
  • 配置「Visible Meta Files」后,必须保留所有 .meta 文件,删除会导致Unity资源引用失效。
  • .gitignore 文件需放在项目根目录,且命名必须是 .gitignore(不能多后缀/少点),否则Git无法识别。
  • Unity项目路径禁止含中文/空格/特殊字符,否则会导致Git提交失败或Unity加载异常。
  • 若多人协作,建议统一Unity版本,避免因版本差异导致 .meta 文件冲突。
  • Packages 文件夹可根据需求选择是否跟踪:若团队需统一依赖版本,可取消 .gitignore 中对 Packages/ 的注释;若依赖包通过UPM自动管理,可忽略。

总结、本篇博客所用的命令汇总

基础环境验证/配置

命令 作用 适用场景
git --version 查看Git版本,验证安装是否成功 安装后必验,跨系统通用
git config --global user.name "你的用户名" 配置全局用户名(提交记录显示) 安装后首次配置,所有仓库通用
git config --global user.email "你的邮箱" 配置全局邮箱(关联代码平台账号) 安装后首次配置,所有仓库通用
git config user.name 查看已配置的用户名 验证配置是否生效
git config user.email 查看已配置的邮箱 验证配置是否生效
git config --global --list 查看所有全局配置(用户名、邮箱、编辑器等) 批量验证全局配置
git config --global core.editor "code --wait" 配置Git默认编辑器为VS Code 替换默认Vim编辑器(可选)
git config --global --unset user.name 删除全局用户名配置 需修改/清空用户信息时
git config --global --unset user.email 删除全局邮箱配置 需修改/清空用户信息时

仓库初始化

命令 作用 适用场景
git init 初始化本地空Git仓库(生成.git文件夹) 创建新仓库的核心命令,跨系统通用

文件状态/暂存/提交

命令 作用 适用场景
git status 查看文件状态(未跟踪/已暂存/已修改等) 每次操作前确认文件状态,跨系统通用
git add 文件名 暂存指定文件(加入待提交队列) 仅提交单个文件时(如git add Readme.md
git add 文件夹/ 暂存指定文件夹下所有文件 仅提交某个目录(如git add Assets/
git add ./git add . 暂存当前目录下所有未忽略的文件 批量提交多个文件/文件夹(Unity项目常用)
git commit -m "提交说明" 提交暂存区文件(生成版本快照) 核心提交命令,提交说明必填,跨系统通用
git log 查看提交记录(ID、作者、时间、说明) 验证提交是否成功,查看版本历史

Git忽略文件排查(补充)

命令 作用 适用场景
git rm --cached 文件名 移除已跟踪文件的暂存状态(保留本地文件) .gitignore配置后,需取消已跟踪的无用文件
git check-ignore -v 文件名 检查文件被忽略的原因(定位.gitignore规则) 排查.gitignore不生效的问题

补充说明

  1. 所有命令跨系统通用(Linux/Ubuntu/Windows终端/VS Code终端/Unity终端均可执行)。
  2. 命令区分大小写(如git add Readme.mdgit add readme.md在Linux下是不同文件,Windows下不区分)。
  3. 核心高频命令:git initgit statusgit add .git commit -m ""git log(新手入门必掌握)。
  4. Unity项目额外注意:.gitignore配置后,需确保git add .不会提交Library/Temp等临时文件夹,可通过git status验证。
Logo

这里是一个专注于游戏开发的社区,我们致力于为广大游戏爱好者提供一个良好的学习和交流平台。我们的专区包含了各大流行引擎的技术博文,涵盖了从入门到进阶的各个阶段,无论你是初学者还是资深开发者,都能在这里找到适合自己的内容。除此之外,我们还会不定期举办游戏开发相关的活动,让大家更好地交流互动。加入我们,一起探索游戏开发的奥秘吧!

更多推荐