本课我们深入学习Trunk Based。主干开发、短命分支、小批量提交、功能开关。这是Git精通课程的第13课,通过本课学习你将掌握相关核心概念和实操技能,能够在实际项目中灵活运用。
≤1天分支/每天合并。这是本课的核心知识点之一,理解其原理和实操方法对掌握Git至关重要。
在核心原则中,我们需要理解以下关键概念和操作方式。Git的设计哲学是让每个操作都有明确的语义和可预期的结果,掌握这些概念能帮助你更高效地使用Git。
$ # 核心原则相关命令
$ git status
On branch main
nothing to commit, working tree cleangit reflog和git reset恢复。小步提交/当天合入。这是本课的核心知识点之一,理解其原理和实操方法对掌握Git至关重要。
在实践中,我们需要理解以下关键概念和操作方式。Git的设计哲学是让每个操作都有明确的语义和可预期的结果,掌握这些概念能帮助你更高效地使用Git。
$ # 实践相关命令
$ git status
On branch main
nothing to commit, working tree cleangit reflog和git reset恢复。Trunk/GitHub/Git Flow。这是本课的核心知识点之一,理解其原理和实操方法对掌握Git至关重要。
在三种策略对比中,我们需要理解以下关键概念和操作方式。Git的设计哲学是让每个操作都有明确的语义和可预期的结果,掌握这些概念能帮助你更高效地使用Git。
$ # 三种策略对比相关命令
$ git status
On branch main
nothing to commit, working tree cleangit reflog和git reset恢复。小批量/功能开关/分支抽象。这是本课的核心知识点之一,理解其原理和实操方法对掌握Git至关重要。
在关键实践中,我们需要理解以下关键概念和操作方式。Git的设计哲学是让每个操作都有明确的语义和可预期的结果,掌握这些概念能帮助你更高效地使用Git。
$ # 关键实践相关命令
$ git status
On branch main
nothing to commit, working tree cleangit reflog和git reset恢复。CI成熟度高的团队。这是本课的核心知识点之一,理解其原理和实操方法对掌握Git至关重要。
在适用场景中,我们需要理解以下关键概念和操作方式。Git的设计哲学是让每个操作都有明确的语义和可预期的结果,掌握这些概念能帮助你更高效地使用Git。
$ # 适用场景相关命令
$ git status
On branch main
nothing to commit, working tree cleangit reflog和git reset恢复。$ git version
git version 2.43.0
$ git log --oneline -3
a163589 v3: introduced bug
2a5802e v2: good
c02b492 v1: good
✅ 验证通过:Git命令执行正常
理解底层原理,不要只停留在命令层面。动手实践是掌握Git的最佳方式。
使用git reflog找到之前的提交,然后用git reset --hard恢复。几乎所有Git操作都可以撤销。
保持频繁沟通,避免长期不合并的分支。所有合并通过Pull Request进行代码审查。
在本课中,我们系统学习了核心概念和实操技能。关键要点:
git help、git log和git reflog| 命令 | 功能 | 常用选项 |
|---|---|---|
git init | 初始化仓库 | — |
git clone | 克隆远程仓库 | --depth,--branch |
git add | 暂存更改 | -p,-A |
git commit | 提交 | -m,--amend,-a |
git status | 查看状态 | -s |
git log | 查看历史 | --oneline,--graph |
git diff | 查看差异 | --staged,--stat |
git branch | 分支管理 | -d,-a,-v |
git merge | 合并分支 | --no-ff,--abort |
git rebase | 变基 | -i,--continue,--abort |
git stash | 暂存工作 | pop,list,-u |
git tag | 标签管理 | -a,-d,-l |
git push | 推送到远程 | -u,--force-with-lease |
git pull | 拉取并合并 | --rebase |
git fetch | 拉取不合并 | — |
git remote | 远程仓库管理 | -v,add |
git reset | 重置 | --soft,--mixed,--hard |
git reflog | 引用日志 | — |
git cherry-pick | 挑选提交 | -x,-n |
git bisect | 二分查找 | start,run |
git blame | 行级追溯 | -L |
git worktree | 工作树管理 | add,list,remove |
git lfs | 大文件管理 | track,install |
假设你正在开发一个Web应用,需要处理以下场景:创建功能分支、提交更改、合并到主分支。以下是完整的命令流程:
$ git checkout -b feature/new-api
$ echo "API endpoint" > api.py
$ git add api.py
$ git commit -m "feat: add new API endpoint"
$ git checkout main
$ git merge --no-ff feature/new-api
$ git branch -d feature/new-api
$ git push origin main
这个流程展示了从创建分支到合并删除的完整过程。注意--no-ff确保保留分支信息,-d删除已合并分支。
git add就直接git commit——提交为空git cherry-pick移到正确分支git push --force而非--force-with-lease——覆盖他人提交.gitignore——提交了编译产物或密钥