GingerBear's Web Log

Dropbox + Git 多人协作

背景: 

一个人开发项目到了一半,想多拉几个人过来一起开发。

使用顺序: 

(一)我先配置好公共的repo。

1. 在Dropbox上创建一个文件夹作为共享的空repo:
 $ cd C:/Users/Neil/Dropbox/

 $ mkdir Git-Repository/MyProject1.git

 $ cd Git-Repository/MyProject1.git

 $ git init --bare

2.  把原来本机上项目放到到那个共享的repo里:
 $ cd C:/User/Neil/Projects/MyProject1

 $ git init

 $ git remote add origin C:/Users/Neil/Dropbox/Git-Repository/MyProject1.git

 $ git add .

 $ git commit -m "first commit."

 $ git push origin master

(二)新加进来的开发们在本机clone一份。

注意:在操作git之前,先config好自己的user.name和user.email 1. 创建本地目录,把Dropbox共享到的repo clone到里面。
 $ cd C:/User/Eric/Projects/

 $ git clone C:/Users/Eric/Dropbox/Share/MyProject1.git

(三)开始日常开发。

1. 获取最新的版本:
 $ cd C:/User/Eric/Projects/MyProject1

 $ git pull origin master

2. 完成一个小功能后,commit一个版本到本地的repo:
 $ git add .

 $ git commit -m "comment on this commit"

3. 完成一个大功能后,把本地的repo push到共享的repo里:
 $ git add .

 $ git commit -m "comment on this commit"

 $ git push origin master

另外:

可能会遇到冲突,因为在你pull最新版本下来之后,又有人push了更新的版本到共享repo里,而且他修改了跟你相关的代码。因此当你现在push的时候会出错,因为共享repo也不知道用他的代码好还是你的代码好。这时就git就会要求你在push之前再pull一次,并且会告诉你冲突的地方,在具体文件中会以下面这种方式体现:
 <<<<<<<<<<<<<<<<

 我的代码

 ===========

 他的代码

 >>>>>>>>>>>>>>>>>
我需要把这段代码解决(跟他商量怎么回事儿)之后在push到共享的repo。 (完)