Stage 0: Pre-Class Preparation
  • 本阶段帮助学员快速建立版本控制认知,掌握Git基础操作
签到人数:168
cover
Stage 0: Pre-Class Preparation
  • 课程介绍
  • 学习视频(5)
  • 组队信息(5)
  • 晋级榜单(36)

关于本训练营的说明

本训练营属于基础训练营,是作为更为高阶训练营的前置而存在的,当您希望报名学习一些学习内容较为深入的训练营时(如清华大学开源操作系统训练营),您需要完成一些基础知识的学习,来证明您具备了进一步深入学习和掌握更深入知识的能力。因而本训练营应运而生,当您通过本训练营所有阶段的测评后,我们便认为您具备了尽心深入学习的一部分基础能力,而后推荐您进行深入学习。


关于本训练营的教学

本期训练营不设置直播课程,我们会根据实际需要提供和推荐学习内容,您需要根据训练营的要求掌握对应的知识来通过训练营的AI测评,通关整个训练营之后您将会获得能力认证来作为报名更深入训练营的基础,或者作为部分训练营部分阶段实验的免试证明。


本训练营的教学帮助

对于教学上有任何问题您可以加入学习交流群以获得助教的帮助或者提供反馈,训练营配有助教来帮助您更好的进行学习和测评。


最后,祝您学习顺利!


导学阶段目标: 快速建立版本控制认知,掌握 Git 基础操作。

学习资源:

● 《Pro Git》: https://bingohuang.gitbooks.io/progit2/content/ (非常全面的 Git 参考书)

● 【GeekHour】一小时Git教程: https://www.bilibili.com/video/BV1HM411377j (快速入门的视频教程)

晋级指标:

● 通过标准为完成ai评测达到100分后方可进入下一阶段

学习成果:

● 能独立创建本地仓库

● 理解工作区/暂存区概念

● 完成日常文档版本管理

● 查看修改历史记录

一、 版本控制系统核心概念(理论理解):

● 版本控制: 追踪文件修改历史,方便回溯、协作和管理。

● 集中式版本控制 (例如 SVN): 只有一个中央服务器存储所有版本,开发者从服务器获取代码并提交修改。

● 分布式版本控制 (例如 Git): 每个开发者都拥有完整的版本库副本,可以本地提交、分支和合并,然后再与远程仓库同步。Git 属于分布式版本控制系统。

二、Git安装与环境配置:

● 安装 Git: 根据您的操作系统(Windows, macOS, Linux)下载并安装 Git 客户端。

● 配置用户信息: 设置用户名和邮箱,用于记录提交作者。

○ git config --global your.email@example.com"user.name "Your Name"

○ git config --global user.email "your.email@example.com"

三、本地仓库基础操作:

1.  创建本地仓库 (git init): 在一个空目录下执行 git init 命令,创建一个新的 Git 仓库。这会在当前目录下生成一个 .git 隐藏文件夹,用于存储版本控制信息。

2.  工作区、暂存区和版本库:

a.  工作区 (Working Directory): 您实际编辑文件的目录。

b.  暂存区 (Staging Area / Index): 用于存放您计划提交的修改。

c.  版本库 (Repository): 存储所有提交的历史记录。

3.  添加文件到暂存区 (git add):

a.  git add <file> 将指定文件添加到暂存区。

b.  git add . 将所有修改过的文件添加到暂存区。

4.  提交修改到版本库 (git commit):

a.  git commit -m "提交信息" 将暂存区中的修改提交到版本库,并附带提交信息。

5.  查看文件状态 (git status): 查看工作区和暂存区的文件状态,了解哪些文件被修改、已暂存或未跟踪。

四、文件状态生命周期管理:

● Untracked (未跟踪): Git 不知道的文件,需要使用 git add 命令添加到暂存区才能被 Git 跟踪。

● Modified (已修改): 工作区中已修改但未暂存的文件。

● Staged (已暂存): 已添加到暂存区,等待提交的文件。

● Committed (已提交): 已提交到版本库的文件。

五、查看历史记录与差异比较:

● 查看提交历史 (git log): 显示提交历史记录,包括提交作者、日期和提交信息。

● 查看文件修改历史 (git log -p <file>):显示特定文件的修改历史以及每次修改的具体内容。

● 比较文件差异 (git diff): 比较工作区、暂存区或不同提交之间的文件差异。

○ git diff 比较工作区和暂存区的差异。

○ git diff --staged 比较暂存区和最新提交的差异。

六、基础GUI工具使用 (GitKraken/Sourcetree):

● GUI 工具可以提供更直观的可视化界面,方便进行版本控制操作。

● GitKraken 和 Sourcetree 是常用的 Git GUI 客户端。

七、核心指令及关键参数考核:

指令 描述

git init 初始化本地仓库

git add 添加文件到暂存区

git commit 提交修改到版本库

git status 查看文件状态

git log 查看提交历史

git clone 克隆远程仓库到本地

git log 常用参数:

● --oneline: 以单行摘要形式显示提交历史。(例如:git log --oneline)

● --graph: 以图形方式显示分支合并历史。(例如:git log --graph --oneline --all)

● -p: 显示每次提交的具体代码差异。(例如:git log -p)

git commit 参数:

● -m: 直接附加提交信息而不进入编辑器。(例如:git commit -m "修复了bug")

● -a: 跳过 git add 直接提交所有已跟踪文件的修改。(例如:git commit -a -m "修改了所有已跟踪文件") 注意:-a 不会提交未跟踪的文件。

git clone 参数:

● --depth 1: 仅克隆仓库最新版本,进行浅克隆。(例如:git clone --depth 1 <repository_url>) 适用于只需要最新代码,不需要完整历史记录的场景。

学习建议:

1.  先理解 Git 的基本概念和工作原理。

2.  动手实践,尝试每个命令和参数。

3.  使用 GUI 工具辅助学习,但不要完全依赖 GUI,要理解命令行操作。

4.  遇到问题查阅官方文档或 Stack Overflow。

 


empty image
暂无数据
序号队伍名称城市学校人数队长队员
Simple Empty
暂无数据
  • 共5条
  • 1
排名姓名学校分数最后提交时间链接
Simple Empty
暂无数据
  • 共36条
  • 1
  • 2
  • 3
  • 4
  • 跳至