A very important part of a development environment is source code control. Subversion is the server-side software that I use for this. There are a number of SVN clients for the Mac. Let’s take a closer look at setting up my favorite SVN client for the Mac – SvnX.

SvnX is a free and open source SVN client for the Mac. It has a rather simple user interface and supports most features required for SVN work. Let’s install it to get a better idea of what it can do. Head over to the SvnX site and download the latest release. After your download completes it should extract automatically. Drag and drop the SvnX application into your system’s Applications folder. That’s it, the installation of SvnX is complete. SvnX is a front-end for the SVN client, and therefore we need to also install the SVN client binary for SvnX to work.

Download the SVN client binary from here. Extract the file you download and copy the svn binary file to /usr/local/bin/

Double click on SvnX in your Applications folder to launch it. The first screen will look something like in the image below. There are two windows here, titled Working Copies and Repositories. You’ll get a better idea of what these two are as we go along.

Before we get into the details of configuring SvnX here’s a quick explanation of how SVN works. There is a repository hosted on a central server which keeps a copy of the documents for project. This could be code or other kinds of documents. The repository maintains versions of the documents. Every time you “check in” new versions it adds a “tag” for the new version so that you can retrieve an older version of the document at any time. Here’s a very good introduction to how SVN works.

To configure SvnX click on SvnX in the application’s menu and then choose Preferences. In the Preferences window enter the path of the svn binary, which is /usr/local/bin/ in our case.

Now let’s configure SvnX to work with your repository. For the purpose of this exercise I will use a repository that is hosted at the following address – “http://svn.sevenacross.com/project”. The username and password for this repository are “calvin” and “calvin123″ respectively. Please replace these with the information for your repository.

In the window with the title Repositories add the address of your repository, the username, and the password:

After you’ve entered all this information double click on the the entry for this repository to launch it. you should get a window that looks like the following:

It would contain a set of directory in the navigation area at the bottom. Select the directory you want to “check out” and click on the button svn checkout at the top of the window. A finder window should pop up asking where you want to “check out” the documents. After the process of “checking out” the code is over you will find an entry for it in theWorking Copies window.

You are ready to begin working with these documents. Now open finder and go to the directory where you “checked out” the code. Edit one or two documents by adding a line of text or a few words somewhere and then save the files. Return to SvnX and double click on the entry for the project in the “Working Copies” window. You will find the files you modified listed in the window that opens. Select them and click on the Add button. Now enter these modified files back into SVN by clicking on the Commit button. Now if someone else were to “check out” this project out of your SVN server she will see the new files with a new tag.

Suppose there are many people working on this project you need to make sure you have the latest version of the documents before you start working on it again. To do that double click on the project entry in the “Working Copies” window and click on the Update button. This will fetch all the latest revisions for all the files that are part of this SVN repository.

There are many things that you can do using SvnX such as moving a section of the repository, or finding the differences between multiple files… but they are beyond the scope of this article. Feel free to read up the project’s documentation or to play with SvnX to discover how to perform these tasks.

Get Started with Subversion using SvnX的更多相关文章

  1. Mac 操作系统安装 SVN server教程(Subversion With Mac OS X Tutorial)

    Find recent articles on my github page: rubyrobot.github.io © 2006-2014 Imagine Ecommerce Subversion ...

  2. Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

    所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...

  3. 【转】Windows平台下的Subversion安装配置新手指南

    原文地址:http://developer.51cto.com/art/201005/199628.htm 本文介绍Subversion安装配置快速指南,首先讲Subversion的安装和配置,Uni ...

  4. SubVersion Ubuntu

    UbuntuサーバにSubversionを入れる Linux, 開発ツール |    Ubuntuサーバが無事に動いたので.続いてSubversionを入れてみる. こんな感じの環境を考える. Apa ...

  5. 安装subversion

    安装subversion需要依赖apr.apr-util.sqlite 下载安装包,放在/usr/file目录 subversion-1.9.4.tar.gz apr-1.5.2.tar.gz apr ...

  6. Can't use Subversion command line client: svn Probably the path to Subversion executable is wrong. Fix it.

    1.最近使用SVN工具时,Checkout出项目到本地后后,然后将其导入到Intellij idea中开发,在提交svn代码的时候,出现这样的错误:Can't use Subversion comma ...

  7. linux上安装subversion

    1.安装svn服务器端  yum install subversion       从镜像下载安装svn服务器端 中间会提示是否ok,输入y,确认 安装成功提示:.....complete! 依次执行 ...

  8. 使用intellij的svn时提示出错: Can't use Subversion command line client: svn.Errors found while svn working copies detection.

    使用Intellij的svn时提示出错:Can't use Subversion command line client: svn. Errors found while svn working co ...

  9. 使用命令行 Subversion 访问项目源文件(SVN)

    from:http://www.open.collab.net/scdocs/ddUsingSVN_command-line.html.zh-cn 命令行 Subversion 入门 如果您参与的项目 ...

随机推荐

  1. 七、LSP 里氏替换原则

    子类的对象提供了父类的所有行为,且加上子类额外的一些东西(可以是功能,可以是属性).当程序基于父类实现时,如果将子类替换父类而程序不需修改,则说明符合LSP原则. 这个解释看的似懂非懂,再看下面更进一 ...

  2. Thread 线程池

    Thread 线程池: 当使用多个较短存活期的线程有利时,运用线程池技术可以发挥作用.运用这一技术时,不是为每个任务创建一个全新的线程,而可以从线程池中抽出线程,并分配给任务.当线程完成任务后,再把它 ...

  3. sqlserver 汉字转拼音 首写字母 索引 函数

    create function fun_getPY(@str nvarchar(4000)) returns nvarchar(4000) as begin declare @word nchar(1 ...

  4. BZOJ[NOI2004]郁闷的出纳员 | Splay板子题

    题目: 洛谷也能评测....还有我wa了10多次的记录233 题解: 不要想得太复杂,搞一个全局变量记录一下工资的改变量Delta,这样可以等询问的时候就输出val+Delta,然后插入的时候插入x- ...

  5. BZOJ2157 旅游 【树剖 或 LCT】

    题目 Ray 乐忠于旅游,这次他来到了T 城.T 城是一个水上城市,一共有 N 个景点,有些景点之间会用一座桥连接.为了方便游客到达每个景点但又为了节约成本,T 城的任意两个景点之间有且只有一条路径. ...

  6. android的apk文件结构

    什么是APK?APK文件都由那些组成?不懂没关系,让小编来为你详细解答. 一.APK简介与描述 APK是AndroidPackage的缩写,即Android安装包(apk).APK是类似Symbian ...

  7. win2008服务器信任问题

    右键计算机,管理,在第一个页面里面有个安全信息,里面的右边有一个配置IE ESC ,点击他后会出现一个窗口,在那里面选择禁用即可!

  8. 转:mysql grant

    本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...

  9. 嵌入式Linux上通过boa服务器实现cgi/html的web上网【转】

    转自:http://blog.csdn.net/tianmohust/article/details/6595996 版权声明:本文为博主原创文章,未经博主允许不得转载. 嵌入式Linux上通过boa ...

  10. Linux内核之页面换出详解

    kswap线程主要用于页面的定期换出,接下来说说kswap线程的实现 首先kswap线程的初始化时,需要根据物理内存的大小设置一个page_cluster变量的值,这个值表示预读数目 (比如本来只读一 ...