最近项目使用了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. MAC 开发 stm32 程序

    资料:http://www.cnblogs.com/humaoxiao 大神技术.

  2. Android Studio 3.0.1模拟器启动报错Emulator: glClear:466 GL err 0x502

    启动模拟器时,报了一大堆以上错误 启动起来之后, Emulator的画面没有正常显示, 点击鼠标会闪烁, 有时还会上下颠倒 有可能是驱动版本太低不支持一些特性,因此就下载个驱动精灵.升级了显卡驱动,结 ...

  3. IntelliJ IDEA 2017 反向代理工具新方法激活

    来源:http://blog.lanyus.com/archives/317.html 反向代理工具, 可用于激活JRebel  (win64) 1.点击进入 https://github.com/i ...

  4. html5--6-11 CSS选择器7--伪类选择器

    html5--6-11 CSS选择器7--伪类选择器 #E:target 选择当前活动的锚点元素. 学习要点 掌握常用的CSS选择器 了解不太常用的CSS选择器 什么是选择器 当我们定义一条样式时候, ...

  5. Oracle:ORA-00214

    现场数据库服务器突然断电,启动时,提示如下现象: sql>sqlplus / as sysdba sql>startup ORA-00214: controlfile 'E:\oracle ...

  6. dba操作之archivelog清理

    下面的命令用于校验归档日志的有效性,列出无效的归档日志,以及以何种方式清除归档日志,列出几种常用的: crosscheck archivelog all;                        ...

  7. 为datanode配置多个数据存储地

    datanode配置多个数据存储地址,涉及到以下两个配置项 dfs.name.dir Determines where on the local filesystem the DFS name nod ...

  8. python-----实现print不换行

    python中print输出是默认换行的,那如何我们不想换行,且需要用多个print函数输出时,就需要改变print默认换行的属性: 例: print('Hello') print('!') 输出结果 ...

  9. 嵌入式Linux学习方法——给那些彷徨者(上)

    要想学好嵌入式Linux,首先要解决两个重要问题: 1. 学什么? 2. 怎么学? 首先解决第一个问题. 嵌入式Linux的系统架构包括软件和硬件两个部分,如下图: 再来看看一个成熟的嵌入式产品的开发 ...

  10. 如何在Centos7上安装&使用docker

    Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且 ...