书生.浦江大模型实战训练营——(三)Git基本操作与分支管理

最近在学习书生.浦江大模型实战训练营,所有课程都免费,以关卡的形式学习,也比较有意思,提供免费的算力实战,真的很不错(无广 )!欢迎大家一起学习,打开LLM探索大门:邀请连接PS,邀请有算力哈哈

文章目录

一、git介绍与基本操作

Git 是一种开源的分布式版本控制系统,广泛应用于软件开发领域,尤其是在协同工作环境中。它为程序员提供了一套必备的工具,使得团队成员能够有效地管理和跟踪代码的历史变更。Git 由 Linus Torvalds 于2005年创建,Git 主要用于软件开发,但也适用于任何需要版本控制的文件管理。

Git 的主要特点

  1. 分布式版本控制:每个开发者的工作站都保留了完整的代码库和历史记录,这意味着即使没有网络连接也可以执行大多数操作。

  2. 高效性:Git 在处理大型项目时性能优越,操作速度快,因为许多操作都是在本地进行的。

  3. 数据完整性:Git 使用 SHA-1 哈希算法来确保数据的一致性,每一个提交都会获得唯一的哈希值,便于追踪和管理。

  4. 支持分支和合并:Git 提供了强大的分支管理功能,允许用户轻松地创建、删除和合并分支,使得并行开发、功能实验和版本发布更加高效。

  5. 灵活的工作流程:Git 支持多种工作流程,包括集中式工作流程、功能分支工作流程、Git Flow 和 GitHub Flow 等,可以根据团队的需求进行选择。

Git 的基本命令

  • git init:初始化一个新的 Git 仓库。
  • git clone [repo]:克隆远程仓库到本地。
  • git add [file]:将文件添加到暂存区。
  • git commit -m "message":提交更改到本地仓库,并附上提交信息。
  • git status:查看工作区和暂存区的状态。
  • git push:将本地提交推送到远程仓库。
  • git pull:从远程仓库获取最新的提交并合并到本地。
  • git branch:列出所有分支,当前分支会有星号标记。
  • git checkout [branch]:切换到指定分支。
  • git merge [branch]:将指定分支合并到当前分支。

git的基本概念

工作区、暂存区和 Git 仓库区

工作区(Working Directory): 当我们在本地创建一个 Git 项目,或者从 GitHub 上 clone 代码到本地后,项目所在的这个目录就是"工作区"。这里是我们对项目文件进行编辑和使用的地方。

暂存区(Staging Area): 暂存区是 Git 中独有的一个概念,位于 .git 目录中的一个索引文件,记录了下一次提交时将要存入仓库区的文件列表信息。使用 git add 指令可以将工作区的改动放入暂存区。

仓库区 / 本地仓库(Repository): 在项目目录中,.git 隐藏目录不属于工作区,而是 Git 的版本仓库。这个仓库区包含了所有历史版本的完整信息,是 Git 项目的"本体"。

二、git分支管理

项目地址为:

python 复制代码
https://github.com/InternLM/Tutorial

点击code,复制下面的git地址,在本地打开bash,没有安装的安装一下即可,win安装地址

**首先将项目fork到自己的仓库,要不之后push没有权限!**这个地方搞了好久,一直报403的错误,后面才知道。

依次输入:

python 复制代码
git clone https://github.com/lzypython/Tutorial.git
cd Tutorial/
git branch -a
git checkout -b camp3 origin/camp3

github进行git cloneCSDN也有很多教程,这里就不再进行赘述,如果有clone到一半clone不下来的情况,多clone几次即可。git branch -a是这个命令列出所有的本地和远程分支。通过查看分支,用户可以确定当前仓库中有哪些分支可用。git checkout -b camp3 origin/camp3这个命令的作用是在本地新建一个名为 camp3 的分支,并且切换到这个分支上。origin/camp3 指的是远程仓库的 camp3 分支。

创建一个新分支

python 复制代码
git checkout -b camp3_3181 # 自定义一个新的分支

创建自己的md文件

python 复制代码
touch ./data/Git/task/camp3_3181.md # 修改为自己的问卷ID

整个操作如下所示

在vscode也可以看到创建出来的新的3181文件,下面在本地将自己的信息填上

python 复制代码
【大家可以叫我】: 爱睡觉的咋
【坐标】:天津
【专业/职业】:人工智能
【兴趣爱好】: 读书
【项目技能】:CV、LLM、RAG
【组队情况】:未组队,快来一起!
【本课程学习基础】:CV、NLP、LLM
【本期活动目标】:闯关,系统学习LLM相关知识,拿证书!

最后提交自己的分支即可,依次输入如下指令:

python 复制代码
git add .
git commit -m "add git_3181_introduction" # 提交信息记录
git push origin camp3_3181

在git界面可以看到上传成功

打开3181branch,发现3181.md也正常上传上去,此时只要再申请合并即可

可以看到自己的merge申请内容,等待审核通过即可。

相关推荐
MELF晓宇8 小时前
多模态向量对齐:从 Embedding 到多模态大模型
llm·agent
Patrick_Wilson8 小时前
Git Worktree 原理详解:从 objects / refs 看懂多分支并行与多 Agent 协作
git·面试·ai编程
yaoxiaoganggang9 小时前
克隆 Superpowers 的规则库到你的本地(或者直接作为 Git Submodule)
人工智能·经验分享·git·ai编程
龙骑士baby9 小时前
重建 AI 认知第 4 篇:Skill——提示词的系统化封装
ai·大模型·llm·prompt·skill
HyperAI超神经10 小时前
深度估计准确率冲上0.9,Meta提出VLM³,论证视觉模型天生会学3D,以Qwen3-VL-4B为基础实现多任务的统一建模
人工智能·3d·大模型·多模态·空间推理·3d感知·3d理解
xixixi7777710 小时前
空天地通信、高速光模块、AI 智能体攻击、同态加密芯片四大事件解读:AI 算力底座攻防与全域通信同步升级
大数据·人工智能·深度学习·ai·大模型·光模块·智能体
Python私教11 小时前
用 Claude Code 做大型重构不翻车:分批+Git 兜底+验证闭环的实战流程(2026)
git·重构·ai编程·代码重构·工程实践·claude code
DogDaoDao11 小时前
【GitHub】Hermes Agent 深度技术分析
程序员·大模型·github·ai编程·ai agent·智能体·hermers agent
汤姆yu12 小时前
AI全生命周期七大安全模块落地指南
人工智能·信息安全·大模型
Shawn Dev12 小时前
团队协作中的 Git Tag 最佳实践:从入门到精通
大数据·git·elasticsearch