标签:news review lis 创建 任务 冲突 开发人员 viewer 昨天

代码昨天还是运行好好的今天就不行了。
代码被删了。
突然出现了一个奇怪的 bug,但是没人知道怎么回事。
如果你出现过上面的任何一种情况,那本篇文章就是为你准备的。
除了知道 git add, git commit , git push 之外,Git 中还需要其他重要的技术需要掌握。长远来看对我们是有帮助的。这里我将向你展示 Git 的最佳实践。
当有多个开发者同时涉及到一个项目时那么就非常有必要正确使用 Git 工作流。
这里我将介绍一种工作流,它在一个多人大型项目中将非常有用。

突然有一天,你成为了一个项目的技术 Leader 并计划做出下一个 Facebook。在这个项目中你有三个开发人员。
release/ 开头的普通分支。release/fb。release/messenger。feature/ 开头。feature/login。Alice 将会在这个分支上编写所有的登录代码。feature/friendrequest 的功能分支。feature/newsfeed 的功能分支。feature/login 发送给 Release(发布) 分支。这个过程是通过发起一个 pull request 完成的。首先 pull request 不能和 git pull 搞混了。
开发人员不能直接向 Release(发布) 分支推送代码,技术 Leader 需要在功能分支合并到 Release(发布) 分支之前做好代码审查。这也是通过 pull request 完成的。
Alice 能够按照如下 GitHub 方式提交 pull request。

在分支名字的旁边有一个 “New pull request” 按钮,点击之后将会显示如下界面:

feature/login。release/fb。点击之后 Alice 需要为这个 pull request 输入名称和描述,最后再点击 “Create Pull Request” 按钮。
同时 Alice 需要为这个 pull request 指定一个 reviewer。作为技术 Leader 的你被选为本次 pull request 的 reviewer。
你完成代码审查之后就需要把这个功能分支合并到 Release(发布) 分支。
现在你已经把 feature/login 分支合并到 release/fb,并且 Alice 非常高兴他的代码被合并了。
release/fb 分支发起了一个 pull request。release/fb 上最新的代码合并到他自己的功能分支 feature/newsfeed (通过 git pull 或 git merge 命令)。同时他解决了所有存在的冲突,现在 feature/newsfeed 已经有了所有发布分支 release/fb 的代码。pull request,由于 John 已经解决了所有问题,所以本次 pull request 不会再有冲突了。因此通常有两种方式来解决代码冲突:
pull request 的 reviewer 需要解决所有的代码冲突。一旦项目完成,发布分支的代码需要合并回 master 分支,同时需要发布到生产环境。
因此生产环境中的代码总是和 master 分支保持一致。同时对于今后的任何项目来说都是要确保 master 代码是最新的。
我们现在团队就是按照这样的方式进行开发,确实可以尽可能的减少代码管理上的问题。
像之前那篇《如何成为一位「不那么差」的程序员》说的那样,建议大家都多看看国外的优质博客。
甚至尝试和作者交流,经过沟通原作者也会在原文中贴上我的翻译链接。大家互惠互利使好的文章转播的更广。


你的点赞与转发是最大的支持。
标签:news review lis 创建 任务 冲突 开发人员 viewer 昨天
原文地址:https://www.cnblogs.com/crossoverJie/p/9602180.html