最近项目使用了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. CSS自定义文件上传按钮样式,兼容主流浏览器

    解决办法:使用text文本框及a链接模拟文件上传按钮,并且把文件上传按钮放在他们上面,并且文件上传按钮显示透明.​1.图片​​2. [代码][HTML]代码 <div class="b ...

  2. ios蓝牙开发(四)BabyBluetooth蓝牙库介绍

    BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx. 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你 ...

  3. ping 中的“TTL"是什么意思

    简单来说就是表示一个数据包在网络中可以跳跃的结点数据,当该数据为零时本数据包将被抛弃 详细解释看以下引用: TTL (although named as "time" to liv ...

  4. bzoj4557 [JLoi2016]侦察守卫——DP

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4557 见这位的博客:https://www.cnblogs.com/Narh/p/91403 ...

  5. 【旧文章搬运】Windows内核常见数据结构(基本类型)

    原文发表于百度空间,2008-7-23 ========================================================================== 学内核从基 ...

  6. Eclipse安装配置Maven

    Eclipse安装配置Maven 1 安装配置Maven 1.1 下载Maven 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven.   ...

  7. Android Studio新建类头部注释和添加函数注释模板及快捷键

    一,Android Studio新建类头部注释 是不是有时候看到这个很心烦 其实Studio中有设置修改这些注释模板的信息的功能 其实很简单,只需要两步: 1.打开Setting设置面板,找到File ...

  8. 51nod 1138 【数学-等差数列】

    思路: 很显然每个连续的序列都是等差数列, 那么我们利用等差数列求和公式. S=(a1+a1+k-1)k/2=(2·a1+k-1)*k/2;a1是首项,k是个数. 枚举k,首项最小为1,k最大,具体不 ...

  9. ErrorObject OpenAsync(Action<ErrorObject>arg_fnRet)

    ErrorObject OpenAsync(Action<ErrorObject>arg_fnRet) public static ErrorObject Open(this ReadWr ...

  10. WPS Office 2019 for Linux来了

    难得啊,焕然一新. WPS Office 2019 For Linux更新说明 11.1.0.8392 版本主要更新: 修复wpsoffice进程存在时不能关机的问题 修复WPS文字模块web版式下拖 ...