- 可以到这里下载安装
Git
: git-scm.com/download/wi…- Learn Git Branching游戏在这里:learngitbranching.js.org/?locale=zh_…
Level 1-4 《Git Reaase变基》
这一关使用rebase命令进行分支的变基操作,不仅在游戏里学习,你还可以在真实环境中进行实验。
游戏答案
# 新建并切换到bugFix分支
git checkout -b bugFix
# 在bugFix分支提交一次
git commit
# 切换到main分支
git checkout main
# 在main分支提交一次
git commit
# 切换到bugFix分支
git checkout bugFix
# 将bugFix分支rebase变基到main分支
git rebase main
准备实验环境
下面命令完整CV到Windows cmd
命令行窗口中执行:
# 准备一个空文件夹
mkdir level-1-4
cd level-1-4
# 初始化本地仓库
git init
# 写一个文件并提交一次
echo 111>>a.txt
git add .
git commit -m "c0"
# 再修改文件并提交
echo 222>>a.txt
git add .
git commit -m "c1"
# 查看提交树
git log --graph --pretty=oneline --all
真实答案:
下面命令完整CV到Windows cmd
命令行窗口中执行:
# 新建并切换到bugFix分支
git checkout -b bugFix
# 在bugFix分支修改文件并提交
echo 333>>a.txt
git add a.txt
git commit -m "c2"
# 切换到master分支
git checkout master
# 在master分支修改文件并提交
echo 444>>a.txt
git add a.txt
git commit -m "c3"
# 切换到bugFix分支
git checkout bugFix
# 将bugFix分支rebase变基到master分支
git rebase master
rebase后的提示:
请手动解决文件冲突后,执行git add
,再执行git rebase --continue
。
或者还可以执行git rebase --skip
跳过这个提交,或执行git rebase --abort
放弃rebase变基
操作恢复到之前的状态。
查看仓库状态:
git status
这里也是类似的提示
用记事本
修改a.txt
后,继续完成rebase
:
# 文件添加到暂存区
git add a.txt
# 设置git编辑器环境变量为true,继续完成变基时无需重新编辑提交信息
set GIT_EDITOR=true
# 解决文件冲突后,可以继续完成变基操作
git rebase --continue
# 该环境变量值置为空,可恢复默认编辑器
set GIT_EDITOR=
git log --graph --pretty=oneline --all