通过网络协作

git 提供相当灵活的协作方式,最常见的方式为:协作者获得原始版本库的镜像,并在上面工作;发起者从协作者那里获取更新

协作者通过git clone创建一个镜像版本库:

git clone user@url:~/path [local]

网络对于 git 来说是透明的,凡是可以访问的位置,如 http、ftp、ssh……,甚至本地路径,对于 git 来说没有什么区别。

通过以下命令,创建一个本机原始版本库sandbox的镜像project,是允许的:

git clone ~/sandbox project  

对于没有指定协议的远程路径,git 默认使用 ssh

(ssh://)user@127.0.0.1:~/sandbox  

使用git pull获取协作者版本库中的内容:

git pull user@127.0.0.1:~/sanbox1 master2[:newest3]    

1

版本库

2

分支名称

3

版本名称(可选。使用版本ID、版本标签,请不要使用“HEAD”)
[提示] 提示
git pull 基于“版本”操作,也就是说,只有提交后才可以进行;这个命令会比较两个版本的时间戳,只获取更新的版本

当发起者进行了更新后,协作者应从发起者那里获取最新的原始版本库,并将当前工作迁移到最新的原始版本库基础上

git fetch origin         #获取最新原始版本库
git rebase origin/master #将工作迁移到最新原始版本库 

这时发起者再次使用 git pull 从协作者那里获取更新……