看了几个git的工作流,感觉都不太符合自己目前的流程。目前我们有三个环境:生产环境、测试环境、本地环境。开发人员在本地开发,push到测试环境,测试人员就在测试环境测试 验收。
目前我们只有十几个人的小团队,没有一个具体的版本发布流程,所以也没有到哪天发布什么版本,哪个任务在什么时间完成之类的,每个人的工作更像是在做hotfix,做完一个小功能或者修复一个小bug就直接推送到develop分支,任务指向测试人员去测试环境测试,没问题了 直接把develop合并到master,发布! 这个流程在人少的时候还可以,人稍微多一点,就牵扯到 我有个功能要上线了 而另一个功能还在测试阶段,master和develop没法合并,只能等测试结束...
基于功能分支的模式,好像可以解决上述的问题,切一个分支做功能或者修复bug,合并到develop去测试,测试通过后合并到master,这时候master就可以随时推送到生产环境。但是另一个问题,团队里的成员水平参差不齐,不能让每个人都有权限合并到master,需要有人去review代码,也就是说,合并到master这个操作只能由一个人或几个人去操作而不是全部,然而可能每天产生的分支就有很多,小到修改一行文字可能都是一个分支,手工去合并这些小分支又是一个很大的工作量.这个跟提交pr的方式有点类似,不够高效...
有什么方法能让测试人员及时看到你的修改方便测试 ,又能随时随地的!有选择性的!往生产环境合并代码?
저희 워크플로와 매우 유사하지만 버전 출시를 위한 특정 시간을 명시했습니다. 버전이 출시된 후 개발자는 자체 브랜치에서 개발한 다음 병합할 때 병합 요청을 보냅니다. 감독관에게 동의하면 브랜치를 개발하고 테스트도 진행한 후 문제가 없으면 메인 브랜치로 이동합니다.
예를 들어 A가 함수를 만들면 직접 테스트해야 하며 개발 브랜치를 푸시한 다음 누가 릴리스하든 전체 기능이 완료되었는지 테스트하기 전에 문제가 없습니다. 이번 버전에서는 이 과정을 거쳐야 합니다. 개발 시 테스트 중인 코드가 있는데 푸시해야 할 긴급한 버그 수정이 있는 경우 일반적으로 두 가지 방법이 있습니다. 하나는 개발 시 테스트 중인 코드를 선별하는 것이고, 다른 하나는 비상 브랜치를 사용하는 것입니다.
git Cherry-pick
이 명령은 선택적으로 커밋을 병합할 수 있습니다. 알림 테스트의 경우 병합 후 지정된 이메일 주소로 자동으로 이메일을 보내도록 GitHub를 구성할 수 있습니다.
git 체리픽