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

ops/2024/10/18 14:23:27/

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

文章目录

  • 一、git介绍与基本操作
  • 二、git分支管理

git_3">一、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_40">二、git分支管理

项目地址为:

https://github.com/InternLM/Tutorial

点击code,复制下面的git地址,在本地打开bash,没有安装的安装一下即可,win安装地址。
在这里插入图片描述
**首先将项目fork到自己的仓库,要不之后push没有权限!**这个地方搞了好久,一直报403的错误,后面才知道。
依次输入:

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 分支。
在这里插入图片描述
创建一个新分支

git checkout -b camp3_3181 # 自定义一个新的分支

创建自己的md文件

touch ./data/Git/task/camp3_3181.md # 修改为自己的问卷ID

整个操作如下所示
在这里插入图片描述
在vscode也可以看到创建出来的新的3181文件,下面在本地将自己的信息填上
在这里插入图片描述

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

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

git add .
git commit -m "add git_3181_introduction" # 提交信息记录
git push origin camp3_3181

git界面可以看到上传成功
在这里插入图片描述
打开3181branch,发现3181.md也正常上传上去,此时只要再申请合并即可
在这里插入图片描述
可以看到自己的merge申请内容,等待审核通过即可。
在这里插入图片描述


http://www.ppmy.cn/ops/94357.html

相关文章

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. 问题解决

问题描述 原来我的服务器docker服务运行正常,但在某次尝试用时, 根据系统的错误提示执行了snap install docker指令之后, 再执行docker ps命令则提示Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running…

C语言strpbrk函数

目录 开头1.什么是strpbrk函数?2.strpbrk函数的内部程序流程图 3.strpbrk函数的实际应用定位字符串中的字符求元音字母(a e i o u A E I O U)的个数NB158 牛牛的名字游戏 结尾 开头 大家好,我叫这是我58。今天,我们要学一下关于C语言里的能定位字符串中…

Mysql绕过小技巧

上源码。 <?php $mysqli new mysqli("localhost", "root", "root", "security");/* check connection */ if ($mysqli->connect_errno) {printf("Connect failed: %s\n", $mysqli->connect_error);exit(); }$my…

Android全面解析之context机制(二): 从源码角度分析context创建流程(上)

前言 这篇文章从源码角度分析context创建流程。 在上一篇Android全面解析之Context机制(一) :初识context一文中讲解了context的相关实现类。经过前面的讨论&#xff0c;读者对于context在心中有了一定的理解。但始终觉得少点什么&#xff1a;activity是什么时候被创建的&…

消费类电子产品日用品外观全案设计学习的思考

1. 如下脑图稍微对于消费类电子产品&日用品外观的全案设计需要学习的内容进行了整理&#xff1b; 2. 除了日常的积累&#xff0c;观察和理论的学习外&#xff0c;实践部分也需要重视起来&#xff0c;首先是手绘&#xff0c;无论后续工作中是用手绘还是板绘&#xff0c;手绘…

JavaScript 基础(四)

五、DOM编程 1.常用事件 onload 页面加载后触发事件 onscroll 滚动时触发 onresize 尺寸变化时 onclick 鼠标点击 onmouseover 鼠标悬停 onmouseout 鼠标移出 onmousemove 鼠标移动&#xff0c;会触发多次 onfocus 对象获得光标&#xff08;焦点&#xff09;时&#x…

超详细!!!electron-vite-vue开发桌面应用之引入UI组件库element-plus(四)

云风网 云风笔记 云风知识库 一、安装element-plus以及图标库依赖 npm install element-plus --save npm install element-plus/icons-vue npm i -D unplugin-icons二、vite按需引入插件 npm install -D unplugin-vue-components unplugin-auto-importunplugin-vue-componen…

控制台返回<empty string>是什么意思

您输入的是一个空字符串&#xff0c;这表示没有任何字符或内容。空字符串在编程和数据处理中很常见&#xff0c;用于表示缺失的文本、未定义的值或需要后续填充的数据字段。在不同的编程语言中&#xff0c;空字符串的表示方法可能略有不同&#xff0c;但大多数语言都支持这一概…