使用 Git 提交代码步骤
Step 1,检查自己的代码改动。执行 git commit -am"" 提交到本地仓库。注意写好准确的描述信息。
Step 2,执行 git pull --rebase,将当前分支的代码更新到远程仓库的最新版本。如果有冲突解决冲突。解决git冲突请见后续介绍。
Step 3,上述步骤执行结束,测试代码。在git bash 命令行窗口中用gitk命令查看提交的历史记录路径,一个分支需要保持为一条直线。检查无误,则执行 git push 提交本地内容到远程仓库。
注意:应当提倡多 commit 有限的 push
使用 Git 解决冲突的步骤
本地仓库git commit完毕,当执行git pull --rebase或者git rebase dev的时候出现冲突,解决步骤如下:
Step 1,在vs code中找到冲突提示,看清楚对应的逻辑选择合适的方式处理好冲突代码,解决冲突。将当前的所有冲突解决完之后,测试检测否有问题。如果没有进入下一步。
Step 2,执行 git add . 这个命令,将当下的改动添加到当前仓库。
Step 3,接着执行 git rebase --continue,确认冲突信息。进入到信息界面之后,如果想退出来继续处理存在的冲突按下 :q 退出即可。就可以接着在代码中处理冲突了。处理完后继续Step2 -> Step3的循环,直到所有冲突处理结束(系统会提示: Successfully rebased and updated...)。
Step 4,执行 git push 提交代码到远程仓库,如果提示 [rejected] ,则看看是否本地版本就是最新可用的版本,如果是则执行 git push --force 命令即可。
注意: 修改完冲突后push之前不要再 pull 代码,这会出错。
使用 Git 合并分支的步骤
这里是基于 rebase 合并分支的步骤。假定将 rayTracer 分支合并到 dev 分支。
注意: 合并前,要确认 rayTracer分支代码提交记录已经全部push到远程仓库。
git提交步骤请见上面的相关介绍。
Step 1,执行 git checkout dev 命令切换到dev分支。再执行 git pull --rebase 将dev分支的本地仓库更新到最新,也就是和远程仓库保持一致。
Step 2,执行 git checkout rayTracer 切换到 rayTracer 分支,接着执行 git rebase dev 命令。如果没有冲突,执行 git push 命令将当前操作同步到远程仓库。如果出现冲突,解决git冲突请见上面的相关介绍,记得解决完冲突测试代码正确性并push到远程仓库。
Step 3,执行 git checkout dev 命令切换到dev分支,然后执行 git merge rayTracer 命令 合并rayTracer分支代码到dev。因为前几步的操作已经解决了冲突和错误,所以正常情况这一步执行完下不会有其他问题。不过我习惯还是检查一下 提交的历史记录是不是直线(gitk命令),以及代码也基本运行测试一下。
Step 4,在当前的 dev 分支执行 git push 命令,将当前的合并操作同步到远程仓库。
Step 5,执行 git checkout rayTracer 再切换回 rayTracer 分支。防止在dev分支误操作。
使用 Git Pick提交记录的步骤
对于多分支的代码库,将代码从一个分支转移到另一个分支是常见需求。
这时分两种情况:
1. 你需要另一个分支的所有代码变动,那么就采用合并(git merge)。
2. 你只需要部分代码变动(某几个提交),这时就可以采用 Cherry pick 来实现这个需求。
更多信息请见: https://ruanyifeng.com/blog/2020/04/git-cherry-pick.html