介绍
会不会使用Git已经是区别一个是否现代化、有没有参与过大型项目的标志了
基本使用
先从远程仓库拉新代码(万事先fetch)
1 | git fetch |
在当前分支基础上新建一个分支
1 | git checkout -b qml |
下载远程仓库的更新
1 | git pull |
查看本地修改了哪些文件
1 | git status -s |
添加文件到暂存区
1 | git add file1 file2 file3 |
删除不需要的文件
1 | git rm -r file dir/ |
写入提交日志
1 | git commit -m "这是一段日志" -a |
提交到远程仓库
1 | git push -f origin main |
提交一个新的分支到远程仓库
1 | git push --set-upstream origin qml |
缓存修改(工作区和暂存区)
1 | git stash push -u xxx |
将暂存修改同步回来
1 | git stash pop |
自动化集成
使用脚本自动化提交(这个对Github Pages非常有帮助)
1 | git add . |
开源项目
冲突管理:以解决一次RT-Thread的冲突为例讲解怎么解决开源项目代码冲突问题
① 进入代码仓库所在目录
1 | cd REPOSITORY |
② 合并分支改动
1 | git merge origin develop --no-ff |
③ 查看冲突文件
1 | git status -s |
④ 解决冲突,可以使用文本编辑器手动编辑,一般冲突以<<<<<<< HEAD
开头,以>>>>>>> BRANCH-NAME
结尾,以=======
为分隔符
1 | <<<<<<< HEAD |
⑤ 编辑冲突文件,跟别人冲突的地方解决掉(去掉冲突标志开头、结尾和中间分隔符,现实中最好跟冲突方商量一下)
1 | path: bsp/stm32 |
⑥ 重新提交代码
1 | git add . |