书生.浦江大模型实战训练营——(三)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申请内容,等待审核通过即可。

相关推荐
GoppViper1 小时前
golang学习笔记29——golang 中如何将 GitHub 最新提交的版本设置为 v1.0.0
笔记·git·后端·学习·golang·github·源代码管理
m0_464832362 小时前
Linux服务器上安装git lfs命令
git
贩卖纯净水.10 小时前
白月光git
git·github
数据智能老司机14 小时前
从零开始构建大型语言模型——微调用于分类
深度学习·神经网络·llm
爱吃瓜的猹z14 小时前
git reset 几点疑问
git·源代码管理
大耳朵爱学习15 小时前
大模型预训练的降本增效之路——从信息密度出发
人工智能·深度学习·机器学习·自然语言处理·大模型·llm·大语言模型
悟空201620 小时前
001、Git开发流程规范
git
Li小李同学Li20 小时前
git学习【持续更新中。。。】
git·学习·elasticsearch
晨春计1 天前
【git】
android·linux·git
念幽1 天前
Git常用命令
git