美文网首页Git使用GitGit干货杂货铺
Git 小团队的协作 (二)

Git 小团队的协作 (二)

作者: ElyarAnwar | 来源:发表于2018-01-08 14:54 被阅读49次
    Git

    分享是最好的记忆--如需转发请注明出处[强调]:共同学习 共同进步 不喜勿喷


    Git 小团队的协作 (二)

    小团队如何利用git协作开发呢?对此我想总结一下自己的经验,
    也算是记个笔记吧。

    我想通过情景设定的方式,通俗易懂的解释效果会更好一点,也比较贴近实际开发过程。

    在创建仓库时分好分支,对此不太了解的同学可以看下Git 小团队的协作 (一)

    情景设定

    人物 角色 权限
    小黑 项目经理 管理者
    小白 项目成员 开发者

    流程

    1. 小黑创建项目

    2. 小白fork项目

    3. 小白clone他fork的项目到本地

    4. 小白从这个项目的 develop 分支分出一个功能分支:feature/login

    5. 小白在 feature/login 分支上完成任务后到代码托管平台建立Pull Request 提示小黑合并他的功能

    6. 小黑review小白的代码,没有问题,合并后关闭 Pull Request

    7. 小白看到自己代码被合并后,删除功能分支 feature/login 继续下一个功能


    这里引申一下fork和clone的作用

    fork

    fork某人的项目之后,我们就能获得跟原仓库一毛一样的仓库。

    clone

    不用多说,克隆远程项目。

    fork 和 clone 的区别

    如果说你 clone 了别人的仓库,偷偷的写了一个BUG想搞原作者,想多了,你提交不到原作者的仓库。
    如果说你fork了别人的仓库,你就能获得一个跟原作者一毛一样的仓库,这时你还想偷偷写以个BUG搞原作者,
    这时你可以推送,但推送的是自己的克隆仓库,还是没有办法对原作者造成威胁,那怎么办呢?你要Pull Request
    让原作者主动合并才可以。


    我们完整的走一边小黑和小白的协作过程

    详细流程

    小黑创建一个新项目:

    $ git init
    $ git remote add origin  https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
    $ git checkout -b develop
    $ git push origin develop:develop
    $ git push origin master
    

    小白fork项目:

    首先fork项目
    然后
    $ git clone https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
    

    简单的说就是:

    给fork配置远程库
    使用
    git remote -v
    查看远程状态
    确定一个将被同步给 fork 远程的上游仓库

    git remote add upstream https://gitee.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
    

    再次查看状态确认是否配置成功。

     git remote -v
    

    同步fork
    从上游仓库 fetch 分支和提交点,提交给本地 master,并会被存储在一个本地分支
    upstream/master
    git fetch upstream

    切换到本地主分支(如果不在的话)

    git checkout master

    把 upstream/master 分支合并到本地 master 上,这样就完成了同步,并且不会丢掉本地修改的内容。

    git merge upstream/master

    如果想更新到 gitee 的 fork 上,直接

    git push origin master 就好了,但是我们要提交到master分支上

    最后进入gitee,进入fork的仓库,点击pull request,选择左边的要合并到的分支,右边选择自己仓库的分支,点击Create pull request发起合并请求,发起之前可以检查一下自己更改的内容

    团队负责人审核,如果没问题通过即可,就这样一次协作流程完成。

    我是ElyarAnwar,在技术的道路上摸爬滚打;
    热爱生活,热爱技术;如果喜欢记得点赞;

    相关文章

      网友评论

        本文标题:Git 小团队的协作 (二)

        本文链接:https://www.haomeiwen.com/subject/zydbnxtx.html