组长-准备步骤
-
初始化git项目。如:使用github的情况——先在github创建项目
-
git clone [email protected]:xxxxx/xxxxxxx.git
-
git checkout -b develop
-
git push origin develop
组员-准备步骤
-
git clone [email protected]:xxxxx/xxxxxxx.git
-
git checkout develop
平时的开发流程
以下步骤,除了commit以外,均在命令行中进行,因为这样可控性更高,而且更清晰,熟练了之后效率更高。
-
打开git bash
-
git checkout -b feature-xxx develop # 从develop分支新建并检出feature分支
-
在idea里进行开发,完成自己的任务,不断地commit # 请继续参考下文的 commit log 标准
-
git checkout develop # 切换回develop分支
-
git pull origin develop # 更新远端代码,看develop分支是否有更新若没有更新,则一定没有冲突。若有更新,可能会发生冲突。(在多人修改同个文件时会冲突)
-
git checkout feature-xxx # 切换回feature分支
-
git rebase develop # 合并develop分支到feature分支,并解决冲突。若无冲突,则跳到第10步;若有冲突,命令行中会提示有哪些文件冲突了,然后回到idea,会发现有一些文件的名字变红了,这时候进入文件,解决冲突。
-
git add . # 解决完冲突之后执行add操作
-
git rebase --continue # 继续刚才的rebase操作,若仍有冲突,则重复第8-9步
-
git checkout develop # 切换回develop分支
-
git merge --no-ff feature-xxx # 合并feature分支到develop分支(无冲突)此时在命令行中进行时,会出现一个提示你输入Commit log界面。参考vim操作:按i,进行输入;按esc,退出输入模式;按:,进入命令模式,输入wq,回车,完成commit。
-
git push origin develop # 推送develop分支到远端
-
git branch -d feature-xxx # 删除原来进行的feature分支
-
等待下一次分配任务,重新回到第1步
参考资料:图文详解如何利用Git+Github进行团队协作开发
Commit log 标准
要求
要求大家多次commit,不要修改很多文件然后一次commit
实例
-
[feat] 新增了用户登录页面
-
[fix] 修复了user页面的url跳转不正确的bug
规范
[type] description
注意 description 与 [type] 之间有一个空格type:commit的类型
-
feat: 新功能
-
fix: 修复问题
-
docs: 修改文档
-
refactor: 重构代码
-
test: 增加修改测试用例