svn常用方法,自己研究了3天的结果,希望给各位提供便利

来源:互联网 发布:文本相似性算法 编辑:程序博客网 时间:2024/06/03 00:13
 

1、checkout(检出)

 

如果你是客户端,想对版本进行修改控制,那么第一次你必须要从服务器端检出文件,以后的更改操作就在此文件上执行吧。

 

方法:在你要保存文件的某个文件夹中的空白地方右键鼠标。选择checkout(检出),在 URL of repository(版本库URL) 中输入要链接的地址,点击确定,便下载下来最新文件,你要做的修改应该在此文件夹里执行。我们不妨先叫此文件夹为:working copy 。 

 

*******************************************************************************

我们先说重要的:以后做了任何更改提交你的更改前,请先点击update(更新)一下。

******************************************************************************* 

 

2、update(更新)

右键鼠标——>update(更新)

 

注意,如果当你的“Working Copy”中有被修改的文件,或者有被删除的文件,并且还未提交这些修改时,这些文件在执行Update过程中是不会被更新的。 

重点:如果服务器端版本没更新的话,对你更新是不会有影响的,会更新成功;如果服务器版本更改,但是恰好修改的内容和你修改的内容不在同一个文件内,比如你改的是a里的内容,而服务器改了b中的内容,则也没有影响;

但若是都修改了a中的内容,则出现问题了,会提示你有冲突,只能点“确定”了,你会看到 working copy 文件夹上多了个黄色感叹号,打开 working copy 会发现里面多了几个文件(做了删除操作时不会自动多出文件),这时你不要慌,在有黄色感叹号的文件上(注意不是 working copy 上右键鼠标)——>TortoiseSVN——>Edit conflicts(编辑冲突)##此时,会弹出一个对话框包含三部分,左上角第一个是服务器端版本库对应的内容,右上角第二个是你修改的内容,下边第三个是两者合并的内容,如果你不处理的话默认为两者合并##——>如果确定要用你修改的内容的话,在右上角第二个框中的红色部分右键鼠标——>Use this whole file(使用整个文件)——>关闭对话框,选择save(保存)——> 然后回到 working copy 右键鼠标——>TortoiseSVN——>Rosolved(已解决的),点确定 ##你会发现原来自动添加的那些文件没了###——>再Commit(提交)就ok了

 

3、修改

 

当你修改了某个文件内的内容,如果你提交时服务器端版本没有更新,则你可以直接提交成功。

如果服务器端版本已被他人更新,但是恰好修改的内容和你修改的内容不在同一个文件内,比如你改的是a里的内容,而服务器改了b中的内容,则也没有影响;但若是都修改了a中的内容,则会提示你:版本过时需要先更新,但一更新,又出现上面2中特殊颜色部分的问题了,解决方法相同,不再重述。(这就是我们为什么建议先更新一下的原因)

 

4、放弃修改

 当你添加、修改、删除文件后,决定放弃修改,

 你可以单击右键,TortoiseSVN->Revert,

 本地的“Working Copy”中的文件和目录会恢复到你修改前的状态。

 

5、删除 

如果你在working copy 文件中做删除文件操作,要删除某个文件或者文件夹,建议用svn自带的删除,方法是:在要删除的文件上右键鼠标-->TortoiseSVN——>Delete(删除)。这样你的删除操作才会被保存到日志中,##若要用 windows 自带的删除,这种删除 working copy 上不会出现红色感叹号的更改标志##。然后若要提交更改,右键working copy ——> commit(提交),这时会出现两种情况: 

a、服务器端的版本还是你下载时的版本,没有经过别人更新,这时,你可以直接按提示步骤提交成功,提示你版本已经更新到第几版。 

b、服务器端的版本已由别人更新过,更新你的 working copy ,在 working copy 上右键鼠标——>update(更新),这时它应该会提示你有冲突,你点“确定”, working copy上出现一个黄色的警示符号。这时请在 working copy 上再右键鼠标——>TortoiseSVN——>Resolve(已解决的)——>确定。就取消了冲突。按理说我们为什么不在update更新前先Resolve (已解决的)来取消冲突呢,这种情况我也试过了,它会说你没更改怎么的,所以你必须经过这么一步。取消冲突后再 commit (提交),就没问题了。

 

6、添加 

这个比较简单。当你在 working copy 文件夹中添加了新的文件时,如果你直接提交,在弹出的提交框中会有你添加的文件,但是复选框没选中,你要自己选中,然后确定即可。

还有一种方法是:在 working copy 内新添加的文件上右键鼠标——>TortoiseSVN——>Add(加入),便会在新添加的文件上出现一个蓝色(+)加号,表示是新添加的,此时直接提交就ok了。第二种方法也可以直接在working copy 文件夹上右键鼠标——>TortoiseSVN——>添加,则新添加的文件都会被加上蓝色 + 号了,效果是一样的。建议用后两种方法。