SPT术语库

git

Git

用 Git 保存修改、试验分支、协作合并并回看代码历史。

12个已发布内容
12 / 12

分支Branch

准备开发 SaveButton 新功能时,从 main 当前提交分出 feature/save-button,先在自己的历史轨道里尝试。

BASEa84c91e
maina84c91e
feature/save-buttonc21f7ab
BRANCH POINTERSmain stays · feature +1

克隆Clone

你要开始参与一个已有项目,需要把远程仓库带到自己的电脑上继续工作。

REMOTEatlasmain · 7b2c9de
CLONEhistory + files
PROJECT FOLDER./atlasORIGIN READY

提交Commit

SaveButton 功能完成后,把这次文件快照、提交信息和父节点留成一条可检查的 Git 记录。

DIFF2 files changedSaveButton.vue · spec.ts
COMMIT OBJECTfeat: add save buttona84c91e
parent 7f2b0d1MESSAGE + TREEmain → object

差异对比Diff

AI 说它改好了一个文件,你想先确认到底哪几行发生了变化。

BEFORE− return 'Save'
AFTER+ return 'Saved'
@@ line 122 LINES CHANGED1 − · 1 +

Git

修改页面后,先区分工作区、暂存区和已经写入历史的提交,再把这次改动留成可回看的记录。

WORKTREE3 files changedguide.vue · tokens.css · README
COMMITdocs: explain gita84c91e
mainpoints to new history

忽略文件 .gitignore

项目里出现了 .env、node_modules 或构建产物,你不想把它们误提交进仓库。

.GITIGNORE*.envnode_modules/
.envIGNOREDsrc/main.tsTRACKED
check-ignore -v.gitignore:1

合并Merge

feature/save-button 已完成,准备把功能分支带回 main,同时保留两边的提交历史。

BASEa84c91e
mainb12d430
feature/save-buttonc21f7ab
MERGE COMMITd4e8b112 parents

拉取Pull

同事已经把功能提交到远程仓库,你要把这些更新带到本地 main 继续工作。

ORIGIN/MAINc21f7ab
FETCH2 commits
LOCAL MAINd4e8b11INTEGRATED

合并请求Pull Request

功能分支已经完成,你要让同事先看差异、跑检查并决定是否合入 main。

featuremain
PR #42 · 2 files changedAdd SaveButton feedbackCI PASS · REVIEW APPROVED
READY TO MERGE

推送Push

本地功能已经提交并检查通过,现在要把这段历史送到远程仓库让团队看到。

LOCAL MAINd4e8b11
SEND2 commits
ORIGIN/MAINd4e8b11UPDATED

储藏Stash

你改到一半却要先切分支处理紧急问题,不想提交半成品,也不想丢掉当前改动。

WIP CHANGESM Button.vueM tokens.css
stash@{0}2 files shelved
WORKTREE CLEANPOP RESTORED

工作树Worktree

你要同时修复一个 bug 和继续做新功能,又不想反复切换当前目录里的分支。

SHARED .GITapp/.gita84c91e · one history
MAIN../appcleanFEATURE../ui-refreshM Button.vue
2 WORKTREES