工具Git与GitLab /GitHub/Coding/...不得不说的秘密。

Posted Q-CODER

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了工具Git与GitLab /GitHub/Coding/...不得不说的秘密。相关的知识,希望对你有一定的参考价值。

    git 是什么?

  Git is a free and open source distributed version control system 
designed to handle everything from small to very large projects 
with speed and efficiency.
---源自官网 https://git-scm.com/

意思是:Git 是一个免费的开源分布式版本控制系统,旨在快速高效地解决大小型项目的所有内容。


  GitLab是什么?

就个人理解,Github是默认开源的,就是你的代码放上去大家都能看到,而且私有化仓库是需要money的。而GitLab就是可以免费私有化仓库的远程代码仓库。还有其他的例如Coding(扣钉),码云等也是有免费私有仓库的。看个人喜好和公司需求选择。我们公司选择GitLab。


  那么接下来,我们来看看如何来使用git和gitlab进行协作开发吧~

对于git的基本使用,这里不多做介绍了。还有不太懂的小伙伴们,可以去看看廖雪峰大佬的BLOG (有对Git和GitHub的详细说明)传送门 https://www.liaoxuefeng.com/wiki/896043488029600

  可能有专业的键盘侠要问了:“廖雪峰大佬都写的那么好,你写这blog干嘛?班门弄斧吗?蚍蜉撼树。”

  卑微的我:“不然,因为真正要想知识属于自己,需要将别人的东西进行内化后将其输出,那才是你的智库。而且,我的输出提供了多一种的形式去理解同一个内容,可能更适合部分人。”

  言归正传。

  现在我们假设远程仓库已经有:1个代码仓库,1个分支(master分支)

  然后首先第一步,我们需要把项目拉到本地:

分为两大步:
1.远程仓库操作:建立一个分支(qcoder)并且create from master
2.本地操作
git init
git remote add origin xxx
git clone xxx
git branch qcoder
git checkout qcoder

ps:
1.xxx是远程仓库的地址
2.本地操作的qcoder 是可以自己命名,为本地仓库分支

完成了上述的5步,你就可以开始尽情的大展你的才华(撸项目经理给你分配的任务了)。

然后,当你成功产出了一个功能,准备上传到远程仓库时(把项目推到gitlab中)

把修改过后的项目推上去:
git add .
git commit -m'commit'         
git checkout master                     //切换到主分支master
git merge --no-ff qcoder[1] -m'commit'  //在本地将qcoder分支合并到Master分支上
git push origin qcoder[2]

ps:
[1]这里的qcoder是本地的分支
[2]这里的qcoder是远程的分支

  最后就是在远程仓库中提交你的合并请求,由该仓库的owner来审批你的请求。

   这样你就完成了一次完整的协作开发的过程。后面就是重复这样的过程。

  这里需要说明一下,在远程由owner合并的时候,可能会出现一些冲突(一般是因为有两个开发人员修改了同一份代码而导致的冲突),需要进行手动解决冲突后才能合并。这里就告诉我们,在开发的时候,尽可能分模块开发,耦合度一定要尽可能的低。例如:可以采用MVP,MVVM等架构进行开发;模块化开发等措施。


  Git和GitLab的功能远远不止于此,欢迎大家一起来讨论和探索。上述内容若有纰漏,还请大佬们指教。鄙人定弯着腰,用耳朵贴着你的嘴来请教(定俯身倾耳以请)。

以上是关于工具Git与GitLab /GitHub/Coding/...不得不说的秘密。的主要内容,如果未能解决你的问题,请参考以下文章

工具Git与GitLab /GitHub/Coding/...不得不说的秘密。

git与gitlab的区别 git与gitlab有啥区别

GIT系列——GitLab备份与恢复

GIT系列——GitLab备份与恢复

Git GitLab服务器社区版安装与使用

git与gitlab