最近项目使用了SVN,为管理代码起到了很好的作用!但是,对于很多初步使用着,还是非常不容易!

公司使用的是Smart SVN 客户端。
Smart SVN 这个工具总体还是挺不错的!
在代码的提交和获取上纠结过一整子,纠结过了,就好了。
废话不说,行动!
 
一、从服务器上获取(拉取)代码
 
Project------>Check Out
 

 
 
二、提交代码到服务器
 
通过上述的操作,在本地指定的目录下,就存在了从服务器上下载下来的代码文件。
提交代码,就相对简单了。
1.右击你要提交的代码,进行相应操作:

 
2.选中,要操作的文件夹,使用快捷按钮:

如果是你一个人对代码进行操作,那一般不会冲突。如果多个人同时操作一个项目,那么,就要防止冲突。
一般可以这么操作:
1.从服务器Update到最新的代码到本地。
2.修改本地代码(工作ing……)。
3.提交代码前,先Update一次(因为被人可能已经提交过代码了,为避免本地版本过低)。
4.Commit自己的代码,到服务器。
 
三、常见问题
 
1.Smart SVN 无法上传*.a文件。
默认情况下,Mac上SVN配置文件,是不允许上传.a文件的,需要单独配置。
使用Smart SVN上传.a文件失败时,可以进行查看,并且重新单独上传。
 
这样,就能看到上传失败的文件。
 
选中指定要上传的.a文件,并且点击:

当然,可以设置电脑上的关于SVN的配置文件。来修改,让Smart SVN 允许上传.a文件。
 
2.修改电脑上的SVN配置文件。
打开~/.subversion/config所在的文件夹。

用记事本打开config文件,找到global-ignores项。global-ignores项列出的就是不允许上传的文件格式。如果你需要允许上传.a文件,那么,就将*.a删除掉。

当然,我们也可以,通过Smart SVN 来进行配置。
 
关Project----->Settings

一般可以自定义为:

*.o

*.lo

*.la

*.al

.libs

*.so

*.so.[0-9]*

*.pyc

*.pyo

*.rej

*~

#*#

.#*

*.swp

.DS_Store

 
建议,将Project----->Default Settings 也设置成一致的。
 
3.Smart SVN 上传.a文件的另一种方式。
其实,还可以将某种类型的文件,设置成Binary类型,这样,SVN就会忽略对其的检查,直接按照Binary类型来对待(SVN允许上传Binary)。通过,这种方式来达到,直接上传.a文件的目的。

4.将本地代码,脱离SVN控制。
其实,每个被SVN控制的文件夹,都有一个隐藏的文件*.svn,也就是记录和管理该目录下的文件。
可以通过,控制台命令,将指定目录下的.svn文件,全部删除掉,这样,就脱离了SVN。
 

sudo find /XXX/XXX/xxx -name ".svn" -exec rm -r {} \;

将指定目录下所有的.svn文件删除掉,这样,SVN就无法管理该代码。
 
总结:其实,Smart SVN就是图形界面下的SVN管理。我们完全可以用命令行来管理!很多问题,只要了解原理,都可以迎刃而解。
 
希望对你有所帮助!

Smart SVN的使用的更多相关文章

  1. iOS的SVN

    1.cornerstone     2.smart svn mac  (比较好用)   3.还xcode自带的.      

  2. Mac系统的SVN客户端:Snail SVN 精简版

    Mac系统的SVN客户端:Snail SVN 精简版 前言 本人在公司中,使用的是windows操作系统,svn客户端自然也就使用tortoise svn.但自从男朋友给我买了台macbook pro ...

  3. smartsvn 用法

    都说SMART SVN是最全的Mac上的SVN客户端工具,分Pro版和基础版,基础版跟Versions差不多,这里找了Pro版下载并破解:mac版本smartSVN客户端下载:http://www.s ...

  4. Mac操作技巧

    Command+Option+P+R,重置PRAM的. 官方关于重置PRAM的说明.(有助于电脑提速) 安装新版系统的时候失败,原因是下载的镜像有问题版本不对,具体是中国区暂未更新镜像,下载下来的有问 ...

  5. How to use SourceGear DiffMerge in SourceSafe, TFS, and SVN【项目】

    What is DiffMerge DiffMerge is yet-another-diff-and-merge-tool from the fine folks at SourceGear.  I ...

  6. svn + nginx unit + python3自动化发布web服务方法

    本周将python web服务管理更换成nginx unit以后发现接口性能有了明显的提升,访问速度快了不少.不过有个很大的问题就是使用svn自动化发布以后,服务并没有刷新使用新的代码运行,而又不懂得 ...

  7. svn 常用命令总结

    svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...

  8. svn常用命令

    1.新建版本库 [root@localhost repos]# mkdir -p project [root@localhost repos]# svnadmin create project [ro ...

  9. 对Maven、gradle、svn、spring 3.0 fragment、git的想法

    1.Maven Maven可以构建项目,采用pom方式配置主项目和其他需要引用的项目.同时可结合spring3.0的新特性web  fragment. 从现实出发,特别是对于管理不到位,程序员整体素质 ...

随机推荐

  1. MYSQL进阶学习笔记九:MySQL事务的应用!(视频序号:进阶_21-22)

    知识点十:MySQL 事务的应用 (21-22) 为什么要引入事务: 为什么要引入事务这个技术呢?现在的很多软件都是多用户,多程序,多线程的.对同一表可能同时有很多人在用,为保持数据的一致性,所以提出 ...

  2. [原创]java获取word里面的文本

    需求场景 开发的web办公系统如果需要处理大量的Word文档(比如有成千上万个文档),用户一定提出查找包含某些关键字的文档的需求,这就要求能够读取 word 中的文字内容,而忽略其中的文字样式.表格. ...

  3. ubuntu openjdk 7 升级 8

    /******************************************************************************* * ubuntu openjdk 7 ...

  4. 默认action和ActionSupport

    默认action: <action></action>中的name属性值与<default-action-ref></default-action-ref&g ...

  5. py-day8-socket网络编程

    本节内容 Socket介绍 Socket参数介绍 基本Socket实例 Socket实现多连接处理 通过Socket实现简单SSH 通过Socket实现文件传送 作业:开发一个支持多用户在线的FTP程 ...

  6. POJ 1737 经典DP

    问题:求含有n个点的连通图的个数. 解: 考虑DP,$f(n)$表示n个点,每个点都和点1相连,且n个点互相连通的图的个数. (蓝字非常重要,这个条件有效地避免了重复计算) $g(n)$表示n个点,每 ...

  7. 012--python字符编码和list列表和循环语句

    一.字符编码: ASCII码最多只能表示 256个符号,每一个字符占8位 为什么一个字节占8位?因为计算机在读一串二进制数111011001111101110的时候, 要按照规定的长度截取,才能分清一 ...

  8. Java基本数据类型与包装类型(转)

    基本数据类型的包装类 为什么需要包装类? Java并不是纯面向对象的语言.Java语言是一个面向对象的语言,但是Java的基本数据类型却不是面向对象的.但是我们在实际使用中经常需要将基本数据转化成对象 ...

  9. Swift4 检验变量

    创建: 2018/05/03  判断类 public func isKind(of aClass: Swift.AnyClass) -> Bool  是否是aClass或其子类的实例  publ ...

  10. HDU6069:Counting Divisors(因子数统计|区间筛)

    题意 计算\(\sum_{i=l}^kd(i^k)(d_i代表i的因子数)\) 分析 比赛搞了3个小时都没搞出来,有两个思维上的trick 1.要先遍历素数,再遍历[L,R],而不是枚举每个数,然后对 ...