SVN — subclipse操作指引
摘自: http://jiangzhengjun.iteye.com/blog/491824
- 安装插件:请参照http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA
 - 导出项目:可以把本机已存在的工程导入到SVN库中进行共享管理,具体是选中某个工程再右击选择 小组|共享项目...。在操作的过程中,默认以工程名为上传目录结构的根上传到代码库中,不过可以改名后再传。在操作的最后一步还是进行一次提交操作才能真真的把文件上传到服务器上去。
 - 图标说明:
灰色向右箭头:本地修改过
蓝色向左箭头:SVN上修改过
灰色向右且中间有个加号的箭头:本地比SVN上多出的文件
蓝色向左且中间有个加号的箭头:SVN上比本地多出的文件
灰色向右且中间有个减号的箭头:本地删除了,而SVN上未删除的文件
蓝色向左且中间有个减号的箭头:SVN上删除了,而本地未删除的文件
红色双向箭头:SVN上修改过,本地也修改过的文件 - 与代码库断开连接:可以与代码库断开,具体操作 右击|小组|断开连接...,在操作过程中可以删除svn相关管理文件,也可保留。
 - 导入项目:可以从代码库上把工程导到本地,个体操作 文件|导入...|SVN|从 SVN 检出项目。注:在此操作过程中有一个“选择检出的方式”选项,有两种,第一种是“做为新项目检出,并使用新建项目向导进行配置(仅当资源库中不存在.project工程文件时才可用,意思是如果代码库中有了这个工程文件,那么它就认为这是一个信息完整的工程,在导入的过程中就不需要再创建工程——选这选那的,因为.project工程文件中已包含了这一些列的信息,所以只有在代码库中不存在.project工程文件时才可选择)”;第二种是“做为工作空间中的项目检出”,这一选项不管代码库中是否有.project文件都是可以选择的,如果代码库中没有.project文件时,选择此种方式,会创建一个简单的工程,那不是Java工程,或其他代码工程,这种工程无不进行相应手工设置是不能进行相应开发的,所以在代码库上无.project工程文件导入时,最好选择前一选项,根据新建项目向导来进行相应设置并自动生成.project工程文件。
 - 更新操作:更新操作是把代码库最新的取到本地,不是是上传,上传操作是提交。
 - 添加文件或目录:如果将文件添加到项目中,它不会自动成为版本控制的一部分 —— 您需要明确将其添加到特定的存储库中。右击新文件,然后选择 Team > Add to Version Control。就是这样!下一次将此项目中的变更提交给存储库时,新文件也会检入。
 - 删除文件或目录:如果添加到了与项目不在相关文件,您可以轻松地删除它。右击文件,然后选择 Delete(subclipse没有对应的删除菜单),插件会自动从本地svn配置文件上删除该文件。不需要使用 Team 菜单,Subclipse 自动将标记要删除的文件,并将它从项目中移除。下一次将变更提交给存储库时,该文件被删除了。
 - 重命名文件或目录:要重命名 Subclipse 控制的文件或目录,请右击它,然后选择 Rename。在输入字段中键入项的新名称,按 Enter 键。你会发现它调用move命令修改文件名,但此时未还未正正修改配置库,需等特下次提交。注意,Subclipse 为 修改名后的“新” 文件添加的蓝色小加号而不是惊叹号。
 - 查看整个项目的修改的历史记录:选中工程,右击|小组|显示资源历史记录。
 - 退回修改文件或找回删除的文件:在历史记录中找到那条删除的日志,在日志上 右击|从修订版本XX回复更改。
 - 覆盖/更新:在Synchronize with Repository后,可对修改过的文件进行覆盖/更新操作,即用库上的代码覆盖本地代码。
 - 在提交你的变化之前,你可能想看一下自从你的上次更新以来是否服务器上有任何文件被修改,想要对比本地和服务器上的源代码,请使用Team——Synchronize with Repository。这个命令让你看到有哪些内容已经被局部地修改,有哪些内容在服务器上修改,以及这两种修改之间的任何冲突。你还可以以可视化方式看到冲突的版本,并且在提交你的变化之前纠正任何比较突出的冲突。
 - 忽略文件:如果项目生成文件,或者包括您不想检入的 Subversion 存储库文件,则可以通知 Subclipse 忽略它们。右击您要在版本控制中排除的文件或目录,然后选择 Team > Add to svn:ignore 即可显示Add to svn:ignore 对话框。
 - 提交更改:如果您对项目的变更感到满意,确定了您的代码可以编译,并且已经对变更进行测试,则应将它们提交给 Subversion 存储库。
 - 对于一个 myeclipse 建立的工程,我们只希望控制必要的源码,而下面几个文件和文件夹要加入到 svn 的忽略列表。当一个文件已经受版本控制之后,就不能在加入忽略列表了,只有新建的文件才可以加入忽略列表。
要忽略的文件和文件夹:.myeclipse .settings .classpath .mymetadata .project classes 不要把class目录上传到服务器上,起初我没有删掉它,更改提交没有问题,但在更新时总是报错:……Working copy not locked; this is probably a bug, please report svn:……,提示就是class目录下的.svn有毛病。原因可能是在Eclipse编译时,将src目录下的svn配置一起编译到了class文件中,并且在编译时先会删除class中的内容,再编译,这就导致了本地配置与配置库上不一致。需要注意的是,请不要将动态生成的目录添加到SVN,否则其他人Check out的之后,再Update容易出错,例如class目录,不需要提交上去。
svn:need-lock属性,可以用来在文件(例如,对二进制文件非常有用)上强加排斥锁。一个定义了svn:need-lock属性的文件一次只能被一个人修改。当该文件被检出时,它是只读的。如果你想修改该文件,你需要首先使用"Team>Lock"菜单选项。之后,使用"Team> Unlock"释放该文件,或仅提交你的变化,也会释放锁,但别人的文件还是只读的,只有别人在获取了锁之后,再能修改该文件。其实该属性以一种强迫的属形势让用户在修改前一定要选获取锁,再能修改该文件,这样就不需要等到提交时再发现早已被别人锁住了。
Tag和Branch:在Subversion中,很容易创建新的tag和branch。你可以使用tag来标识一个特定的版本(使用一种可读的名字,例如"Release 1.0");而一个branch用于新的开发工作而不影响主源码基(称作trunk)。在一个branch上的开发仍会继续进行,直到开发者已经为把变化集成回主trunk作好准备。
在Subversion中,branch和tag都是通过制作给定修订的一个虚拟副本(以另一个名字和/或另一个目录)创建的。在常规情况下,branch存储在branches目录下,tag位于tags目录下,尽管在实践中为了满足你的工程你可以使用自己的任何定制。
从Eclipse中,"Team>Branch/Tag"菜单能够使你创建branch和tag。其中,Browse按钮提供了一种方便的方法来查看有哪些branch和tag存在于仓库中。
当你使用"Team>Switch"创建成功一个新的branch或tag时,你可以非常容易地在branches之间进行切换。无论何时你切换到一个不同的branch(或返回到trunk),Subversion将仅更新文件(它需要保持你的当前工作的副本与目的branch之间的同步)。修订历史:你跟踪你的源码的变化。"Team>Show in Resource History"菜单选项能够使你查询这些变化的列表(包括对一个文件,目录或甚至整个工程的改。
SVN — subclipse操作指引的更多相关文章
- change Username for SVN(Subclipse) in Eclipse
		
Subclipse does not own the information about users and passwords (credentials), so there is no way f ...
 - eclipse下SVN subclipse插件
		
本文目的 让未使用过版本控制器软件或者未使用过subversion软件的人员尽快上手. subversion的使用技巧很多,这里只总结了最小使用集,即主要的基本功能,能够用来应付日常工作. 因此不涉及 ...
 - eclipse svn subclipse下载地址
		
http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 Eclipse 3.x Subclipse release ...
 - 转:SVN Eclipse插件Subclipse安装和配置
		
一.安装Subclipse subclipse项目地址:http://subclipse.tigris.org/. 安装Subclipse的最好方法是使用Eclipse Update Manager. ...
 - Myeclipse安装SVN插件(转)
		
方法一:在线安装 1.打开HELP->MyEclipse Configuration Center.切换到SoftWare标签页. 2.点击Add Site 打开对话框,在对话框Name输入Sv ...
 - eclipse中svn插件的安装和tortoiseSVN的安装
		
在项目的开发中一般都需要用到版本控制,其中用的比较多的就是svn(subVersion),svn的使用既可以以插件的形式,也可以以客户端的形式使用.今天就介绍一下eclipse中svn插件的2种安装方 ...
 - eclipse  svn -- - --- appears to be part of a subversion 1.7 or greater....解决方法
		
安装与svn1.7相兼容的flex Eclipse中的SVN(subclipse) 今天差点被TortoiseSVN1.7和subclipse弄崩溃... 还好最后弄好了,在此把方法写出来,以免其他人 ...
 - Maven Eclipse (m2e) SCM connector for subclipse 1.10 (svn 1.8) 无法检测
		
用新东西总是会有一些风险,尤其是相互的依赖和版本问题. 为了体验最新Eclipse Mars,Version: Mars Milestone 1 (4.5.0M1),Eclipse安装之后需要安装一些 ...
 - mac下eclipse安装svn插件-subclipse
		
目前Eclipse最常用的svn插件莫非subclipse,在windows系统下的安装svn client和subclipse比较简单.本文介绍如何在mac安装svn插件和subclipse. 一. ...
 
随机推荐
- Java SHAA加密
			
package com.util; import java.security.MessageDigest; /** * 采用SHAA加密 */ public class SHAUtil { /*** ...
 - socket.io分布式
			
socket.io是目前较为流行的web实时推送框架,其基于nodejs语言开发,底层用engine.io实现. 借助nodejs语言异步的特性,其获得了不错的性能.但单个实例的socket.io依然 ...
 - AngularJS核心01:如何启动
			
启动 下面解释了AngularJS是如何运行下面Html的(用一张图和一个例子来解释): 浏览器载入HTML,然后把它解析成DOM. 浏览器载入angular.js脚本. AngularJS等到DOM ...
 - springMVC
			
SpringMVC架构流程: 1.用户发送请求至前端控制器DispatcherServlet2.DispatcherServlet收到请求调用HandlerMapping处理器映射器.3.处理器映射器 ...
 - 欧拉回路 uoj117
			
写了一道欧拉回路的模板题.先判断是否是欧拉回路,有向图和无向图有一点点不同,然后就是特判独立点的存在. 之后是输出路径,和dls学的dfs,利用last数组的更新可以做到线性的复杂度,否则一不小心就会 ...
 - POJ 1509 Glass Beads 后缀自动机 模板 字符串的最小表示
			
http://poj.org/problem?id=1509 后缀自动机其实就是一个压缩储存空间时间(对节点重复利用)的储存所有一个字符串所有子串的trie树,如果想不起来长什么样子可以百度一下找个图 ...
 - bzoj4753 最佳团体
			
题目描述 JSOI 信息学代表队一共有 NN 名候选人,这些候选人从 11 到 NN 编号.方便起见,JYY 的编号是 00 号.每个候选人都由一位编号比他小的候选人R_iRi 推荐.如果 R_i ...
 - JDK源码(1.7) -- java.util.AbstractCollection<E>
			
java.util.AbstractCollection<E> 源码分析(JDK1.7) ------------------------------------------------- ...
 - python 用gensim进行文本相似度分析
			
http://blog.csdn.net/chencheng126/article/details/50070021 参考于这个博主的博文. 原理 1.文本相似度计算的需求始于搜索引擎. 搜索引擎需要 ...
 - Spring JdbcTemplate batchUpdate() 实例
			
在某些情况下,可能需要将一批记录插入到数据库中.如果你对每条记录调用一个插件的方法,SQL语句将被重复编译,造成系统缓慢进行. 在上述情况下,你可以使用 JdbcTemplate BATCHUPDAT ...