git协作

来源:互联网 发布:云计算paas平台 编辑:程序博客网 时间:2024/06/06 00:12
对于一个刚使用git进行开发的人来说,总有一些困惑,今天正好有时间,大致的进行一下梳理,主要解决的是远程分支和本地分支到底是一种什么关系的问题。

首先,本地仓库就是在自己的电脑上,远程仓库就是在github上面,这点是基础。
然后你要懂本地分支是怎么建立的,合并的,这也是基础。
很多人不明白比如:两个人进行团队开发的时候,使用git,然后一个人做了修改之后,另一个人再push上去的时候,就会发现Push失败,
然后百度就和我们说,要先fetch下来,再merge,然后再push就可以了,但是又有多少人知道这究竟是为什么呢?

首先,问自己一个问题,假如自己开发一个项目,之后自己在本地提交4次,然后才push上去,那么github上面会增加几次commit?
答案是4次 很简单,但是有很多同学说就是一次;

然后,2个人协同开发,一个人假如push上了东西之后,然后又为什么另一个人必须fetch之后才能push呢?
一句话 就是fetch的时候他是潜意识的标记了你origin/master 分支在本地的位置,当其他人push的时候,就会导致master的位置发生变化,
那么就导致了无法push,解决的办法就是更新origin/master的位置,然后和自己的进行merge,才能push;
我的理解就是有个origin/master 分支指向你上次push的版本 然后你在本地提交几次之后 再push 就直接push从origin/master 到 本地master现在指向的全部

白话理解:就是别人干了活,然后你的功劳接在别人之后那是不行的,只有先看看别人做的事,然后和自己比较之后,merge,才能进行下去。
0 0