git介绍
它是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git的诞生离不开Linux社区的努力,它是开源的,而且是免费的。它支持多种操作系统,包括 Linux、Unix、Mac OS X、Windows。
基本概念
工作区、暂存区和 Git 仓库区
- 工作区(Working Directory): 当我们在本地创建一个 Git 项目,或者从 GitHub 上 clone
代码到本地后,项目所在的这个目录就是“工作区”。这里是我们对项目文件进行编辑和使用的地方。 - 暂存区(Staging Area): 暂存区是 Git 中独有的一个概念,位于 .git
目录中的一个索引文件,记录了下一次提交时将要存入仓库区的文件列表信息。使用 git add 指令可以将工作区的改动放入暂存区。 - 仓库区 / 本地仓库(Repository): 在项目目录中,.git 隐藏目录不属于工作区,而是 Git
的版本仓库。这个仓库区包含了所有历史版本的完整信息,是 Git 项目的“本体”。
文件状态
- 已跟踪:文件已被纳入版本控制,根据其是否被修改,可以进一步分为未修改(Unmodified)、已修改(Modified)或已暂存(Staged)。
- 未跟踪:文件存在于工作目录中,但还没被纳入版本控制,也未处于暂存状态。
分支
分支是 Git 的一大特性,支持轻量级的分支创建和切换。Git 鼓励频繁使用分支和合并,使得并行开发和错误修正更为高效。
下载使用git
Windows
- 下载并安装适合您 Windows 版本的安装程序:https://git-scm.com/download/win
- 按照安装向导完成安装。(默认设置安装即可)
- 打开终端(win+r→cmd),输入指令 git --version 检查是否安装成功。
安装好后,右键会出现两个Git选项,一个是GUI,一个是Bash,主要用到的是Bash。
Linux
- 打开终端,输入指令
sudo apt-get install git #安装 Git。
sudo apt-get update
sudo apt-get upgrade
- 输入指令
git --version
检查是否安装成功。
配置Git
全局设置:这些设置影响你在该系统上所有没有明确指定其他用户名和电子邮件的 Git 仓库。这是设置默认用户名和电子邮件的好方法。
进入到Git Bash中,弹出类似终端的窗口。
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
这里的 "Your Name"
和 "your.email@example.com"
应替换为你自己的姓名和电子邮件。
本地设置:这些设置仅适用于特定的 Git 仓库。这对于你需要在不同项目中使用不同身份时很有用,例如区分个人和工作项目。
首先,确保你当前处于你想要配置的 Git 仓库的目录中。
例如,我想拉取或者创建一个Tutorial的项目,则创建一个Tutorial的文件夹,在此文件夹中输入以下内容:
git config --local user.name "Your Name"
git config --local user.email "your.email@example.com"
同样,替换 "Your Name"
和 "your.email@example.com"
为该特定项目中使用的姓名和电子邮件。
验证 Git配置
- 查看全局配置:
git config --global --list
- 查看仓库配置:
git config --local --list
- 永久保存信息至本地:
#来设置 Git自动记录密码(token),从而无需在每次 pull 或 push 时输入# 注意:信息会以明文存储在本地,需考虑安全性
git config --global credential.helper store
- 查看特定配置项:
git config user.name
git config user.email
Git使用流程
将https://github.com/InternLM/Tutorial/tree/camp4项目直接fork到自己的仓库,注意需要fork的分支为camp4。
fork时,注意不要勾选只fork camp3分支!!
fork之后会和仓库分支一样。
配置git并克隆项目到InternStudio本地
# 修改为自己fork的仓库,改为上图中你的https仓库的git地址,将random-zhou改为自己的用户名
git clone https://github.com/random-zhou/Tutorial.git
#git clone git@github.com:random-zhou/Tutorial.git
#git clone https://github.com/InternLM/Tutorial.git
cd Tutorial/
git branch -a
git checkout -b class origin/class
创建分支
git checkout -b class_036 # 自定义一个新的分支
#git checkout -b class_id 分支名字改为你的uid分支名称
创建自己的介绍文件
介绍文件的模板(路径 ./icamp4/id.md
)文件可以直接手动创建,手动编辑。
【大家可以叫我】:InternLM
【坐标】:上海
【专业/职业】:小助手
【兴趣爱好】:乒乓球
【项目技能】:cv、nlp
【组队情况】:未组队,快来一起!
【本课程学习基础】:CV、NLP、LLM
【本期活动目标】:一起学习,快乐暑假,闯关达人!
提交更改分支
git add .
git commit -m "add git_camp4_036_introduction" # 提交信息记录,这里需要修改为自己的uid
推送分支到远程仓库
git push origin class_036
#注意,这里要改为你自己的分支名称
#大家提交使用英文,避免同步错误
第一次推送,可能需要使用rsa的key进行授权,根据github和git提示进行即可。
检查提交内容
点击右上角Compare & pull request
在“Add a title中”输入 "add git_< id >_introduction",注意修改合并分支,然后点击“Create pull request”
构建个人项目
创建并维护一个公开的大模型相关项目或笔记仓库。
创建一个仓库即可。
选择使用本地git进行拉取并修改后二次上传。
参与讨论