git笔记
1. 安装git
windows安装
git官网:https://git-scm.com/downloads
官网下载慢,使用淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows-windows
mac安装
- 通过homebrew安装Git
$ brew install git
- 通过下载安装
下载地址:https://git-scm.com/downloads
linux安装git
1、配置base源和epel源
# cat /etc/yum.repos.d/aliBase.repo
[aliBase]
name=aliBase
baseurl=https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-$releasever
# cat /etc/yum.repos.d/aliEpel.repo
[aliEpel]
name=aliEpel
baseurl=https://mirrors.aliyun.com/epel/$releasever\Server/$basearch/
enabled=1
gpgcheck=0
2、yum命令下载
yum install -y git
3、查看是否下载成功
git --version
2. git原理介绍
Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:
Workspace:工作区,就是你平时存放项目代码的地方
Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
3. git配置
Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。
这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig
文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
~/.gitconfig
文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
当前项目的 Git 目录中的配置文件(也就是工作目录中的 .git/config
文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config
里的配置会覆盖 /etc/gitconfig
中的同名变量。
设置用户名跟邮箱
$ git config --global user.name "lzw"
$ git config --global user.email "tyutlizhewei@163.com"
查看全局配置
$ git config --global --list
4.项目管理
让git对目录进行版本控制需要以下步骤:
第一阶段:初始版本
1、初始化命令
git init
2、管理目录下的文件状态
git status
注:新增或修改过后的文件都是红色
3、管理指定文件
git add 文件名
git add .
4、生成版本
git commit -m "描述信息"
5、查看版本记录
git log
第二阶段:扩展新功能
git add
git commit -m "短视频"
第三阶段:回滚版本
- 回滚至之前的版本
git log
git reset --hard 版本号
- 回滚至之后的版本
git reflog
git reset --hard 版本号
5、三大区域转换
6、分支
- 查看分支
git branch
- 创建分支
git branch <分支名称>
git checkout -b <分支名称> // 创建分支,并切换至该分支
- 切换分支
git checkout <分支名称>
- 分支合并
git merge <要合并的分支>
注:切换分支再合并
- 删除分支
git branch -d <分支名称>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义