
00:00:00
外卖卷:非常划算 扫码领劵 省点小钱钱
Git 将你的项目目录分成四个关键区域,便于版本控制和协作。
有哪些分区,位于什么地方,其作用是什么?
工作区:
暂存区:
.git 目录下的临时区域。git add 命令将工作区的修改添加到暂存区。本地仓库:
.git 目录,存储了项目的完整历史记录。远程仓库:
如何操作这些分区,操作流程是什么?
Git 命令或操作的本质,就是在这四个分区之间同步文件。
远程仓库 -> 本地仓库:
git clone: 首次克隆远程仓库到本地。git pull: 从远程仓库拉取并合并更新到本地仓库和工作区。git fetch:从远程仓库拉取更新到本地仓库,但不自动合并到工作区。工作区 -> 暂存区:
git add: 将工作区中修改过的文件添加到暂存区。暂存区 -> 本地仓库:
git commit: 将暂存区的文件提交到本地仓库,并附带提交信息。本地仓库 -> 远程仓库:
git push: 将本地仓库的提交推送到远程仓库。@startuml
' Define the participants
participant "Working Directory(工作区)" as WD
participant "Staging/Index(暂存区)" as SI
participant "Local Repository(本地仓库)" as LR
participant "Remote Repository(远程仓库)" as RR
' Define the arrows and messages
RR -> WD : git clone
WD -> SI : git add
SI -> LR : git commit
LR -> RR : git push
RR -> WD : git pull
RR -> LR : git fetch
LR -> WD : git merge
@enduml分区的目的/意义?
将项目划分成这些区域是为了实现更灵活、更精细的版本控制。
git reset 命令将修改从暂存区移除,返回到工作区。.git 文件夹是 git 版本控制系统用来管理和存储项目历史的核心目录
object 文件夹存储了所有的数据对象(文件、目录、提交)
| 对象名称 | 存储内容 | 对象特点 |
|---|---|---|
| blob | 文件 | 存储文件内容,每个文件以及文件历史版本都会存储并且压缩为一个 blob 对象,如果历史版本的内容相同则共用同一个 blob |
| tree | 目录 | 存储了仓库的目录结构信息 |
| commit | 提交 | 一个 commit 对象包含了该提交的作者、提交时间、提交信息、还有对 tree 对象的引用 |
refs 文件夹
HEAD 文件记录了本地当前是哪个分支
# 基础命令
git init # 初始化仓库
git status # 查看状态
git add # 添加到暂存区
git commit # 提交到本地仓库
git push # 推送到远程仓库
git pull # 拉取远程更新
git clone # 克隆远程仓库
# 分支管理
git branch # 查看分支
git branch [branch_name] # 创建分支
git checkout [branch_name] # 切换分支
git merge [branch_name] # 合并分支
git branch -d [branch_name] # 删除分支
# 其他常用命令
git log # 查看提交历史
git diff # 查看修改内容
git reset # 撤销修改
git revert # 撤销提交
git tag # 标签管理
评论