Skip to content

第13章:Git 新手面试题(基础版) ​

13.1 基础概念题(Git 定义、核心概念、与 SVN 区别等) ​

1. 什么是 Git? ​

答案:Git 是一个分布式版本控制系统,用于跟踪代码的变更,支持多人协作开发。

2. Git 的核心概念有哪些? ​

答案:

  • 仓库(Repository):存储代码和版本历史的地方
  • 提交(Commit):代码的一个快照
  • 分支(Branch):代码的一个独立开发线
  • 远程仓库(Remote):存储在网络上的仓库
  • 工作区(Working Directory):本地编辑代码的目录
  • 暂存区(Staging Area):临时存储待提交的修改

3. Git 与 SVN 的区别是什么? ​

答案:

  • Git 是分布式的,SVN 是集中式的
  • Git 存储的是完整的版本历史,SVN 存储的是变更差异
  • Git 分支更轻量级,SVN 分支较重
  • Git 支持离线操作,SVN 需要联网
  • Git 的提交速度更快

4. 什么是版本控制系统? ​

答案:版本控制系统是一种用于跟踪文件变化的工具,它可以记录文件的历史变更,方便回滚到之前的版本,支持多人协作开发。

5. Git 的工作原理是什么? ​

答案:Git 采用快照的方式存储代码,每次提交都会创建一个完整的代码快照。它使用哈希值来唯一标识每个提交,通过引用(如分支、标签)来指向特定的提交。

13.2 核心命令题(常用命令用法、场景题) ​

1. 如何初始化一个新的 Git 仓库? ​

答案:

bash
git init

2. 如何将文件添加到暂存区? ​

答案:

bash
# 添加单个文件
git add <文件名>
# 添加所有文件
git add .

3. 如何提交代码到版本库? ​

答案:

bash
git commit -m "提交信息"

4. 如何查看当前仓库状态? ​

答案:

bash
git status

5. 如何查看提交历史? ​

答案:

bash
git log
# 查看简洁的提交历史
git log --oneline

6. 如何创建并切换到新分支? ​

答案:

bash
git checkout -b <分支名>
# 或者使用 git switch
git switch -c <分支名>

7. 如何合并分支? ​

答案:

bash
# 切换到目标分支
git checkout <目标分支>
# 合并源分支
git merge <源分支>

8. 如何推送代码到远程仓库? ​

答案:

bash
git push origin <分支名>

9. 如何拉取远程仓库的代码? ​

答案:

bash
git pull origin <分支名>

10. 如何克隆远程仓库? ​

答案:

bash
git clone <远程仓库地址>

13.3 实战场景题(合并冲突解决、版本回溯、团队协作流程等) ​

1. 如何解决合并冲突? ​

答案:

  1. 当 Git 提示冲突时,查看冲突文件
  2. 手动编辑冲突文件,删除冲突标记,保留需要的代码
  3. 执行 git add . 标记冲突已解决
  4. 执行 git commit 完成合并

2. 如何回滚到之前的版本? ​

答案:

bash
# 查看提交历史,找到要回滚的提交哈希值
git log --oneline
# 回滚到指定版本(保留修改)
git reset <提交哈希值>
# 回滚到指定版本(不保留修改)
git reset --hard <提交哈希值>

3. 如何临时保存当前修改? ​

答案:

bash
# 保存当前修改
git stash
# 查看暂存列表
git stash list
# 恢复暂存
git stash pop

4. 团队协作的基本流程是什么? ​

答案:

  1. 克隆远程仓库到本地
  2. 创建功能分支进行开发
  3. 提交代码到本地仓库
  4. 推送到远程分支
  5. 创建合并请求/PR
  6. 代码审查
  7. 合并到主分支
  8. 删除功能分支

5. 如何处理误提交的情况? ​

答案:

bash
# 撤销最近一次提交(保留修改)
git reset HEAD~1
# 撤销最近一次提交(不保留修改)
git reset --hard HEAD~1
# 如果已经推送到远程,需要强制推送
git push -f origin <分支名>

13.4 面试技巧(新手如何准备 Git 面试,重点记忆点) ​

1. 准备重点 ​

  • 掌握 Git 核心概念:仓库、提交、分支、远程仓库等
  • 熟悉常用命令:init、add、commit、push、pull、branch、merge 等
  • 了解 Git 工作原理:快照存储、哈希值、引用等
  • 掌握常见问题的解决方法:合并冲突、版本回滚、误操作挽救等
  • 了解团队协作流程:分支管理、PR 流程等

2. 面试技巧 ​

  • 保持冷静,遇到不会的问题可以诚实承认,然后尝试思考
  • 结合实际项目经验回答问题,展示自己的实践能力
  • 对于命令相关的问题,可以边说边写出命令示例
  • 展示自己的学习能力和解决问题的思路
  • 了解一些 Git 最佳实践和规范

3. 重点记忆点 ​

  • Git 的三个区域:工作区、暂存区、版本库
  • 常用命令的基本用法和参数
  • 分支管理的基本流程
  • 合并冲突的解决方法
  • 版本回滚的不同方式及区别
  • 团队协作的基本流程

通过准备这些面试题,你可以在面试中展示自己对 Git 的理解和使用能力,提高面试通过率。

© 2026 编程马·菜鸟教程 版权所有