首页 > 代码库 > 搜芽项目开发之SVN协作流程

搜芽项目开发之SVN协作流程

我想让你们提交一下代码,然后我回去看了一下 seller的提交,发现没有成浩的代码,后来我发现他在上一级目录找到他的代码了。
如下图所示:本应该是在seller目录下的,而不应该另开目录。所以我再这里讲一下你们如何使用svn提交代码。我用命令行来讲,
我也不是很精通,会用,懂流程能协作开发就好。见图后:


首先,我们分情况:
1,我写了一个项目,服务器也从来没有这个项目的代码(我干的活,eg seller)怎么办。
如我要以下图目录作为源码,想在服务器给它开个分支。(这个目录现在已经提交了,我们先假设没有做过)
 
第一步,先去服务器建立一个目录。比如seller。
 
然后回到刚才本地的seller目录,这个时候要将二者关联了。怎么办?直接是没办法的,因为要在本地同步svn的话,你必须是在一个空目录下。
所以(加入你的eclipse还在开发这seller的话,把eclipse关闭)。你需要备份这个seller目录,然后清空该目录。
 
然后进入到seller目录,更新到服务器(svn update )。。这个时候二者就建立了关联。但是,是个空的。
这个时候,你把刚刚做的备份的东西考进来,就是复原,然后再把这些子目录,文件该上传的都 svn add ,
然后再commit (commite需要有个注释什么的,日志,记录你加了什么东西)
这个时候,你的项目就成功的在服务器创建了一个新的分支。
那么其他人,可以通过这个分支来下载代码(svn checkout)和工作和协作(修改后提交代码svn status(查看),svn add 新文件,svn commit 提交)。

这就是利用已有的代码建立分支的过程。

第二种情况:
我没有代码,我的工程就是从svn下载下来的,例如你们,那么你们的步骤应该是会变得更加简单。
就是svn checkout address... 导出到本地,然后进行你们的开发。开发比如加了一个叫a.java的文件,这个时候同事叫你提交下代码。怎么办?
不能立刻提交代码。首先你应该看一下是不是有其他人在你上次下载代码之后提交过代码!所以首先做的是看一下svn的日志。
如果有人提交了,比如欣欣提交了。那么成浩你需要先更新代码 svn update.
然后更新如果有冲突,例如同在文件B.java,成浩改了,欣欣也改了,而且欣欣提交上去了,这个时候成浩就需要看一下更新后的B.java哪里冲突了(一般会有一些古怪的诸如<<<<<<<或者其他的标记,精确到行的)。你需要在本地解决好冲突。然后你觉得没问题了。你再加入A.java 然后提交。这个时候,A是新加的,B文件则是成浩在欣欣的代码上改过的。


基本上开发上的情况就是这个流程。你们需要做的就是将上述流程转化为你们平台的指令或者图形界面。

如果还不清楚,周末我会来广州一趟。我再教一遍。最好,

搜芽项目开发之SVN协作流程