0% found this document useful (0 votes)
135 views

SVN Management Using XCode SCM

This document discusses version control and Subversion (SVN) for managing software changes. It defines what a version is, explains version control and its uses. It then describes SVN, the components needed to use it like a server and client, and how to set up a local SVN repository in Xcode. Finally, it covers common SVN terms and commands like checkout, commit, update, and important things to remember when using SVN.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
135 views

SVN Management Using XCode SCM

This document discusses version control and Subversion (SVN) for managing software changes. It defines what a version is, explains version control and its uses. It then describes SVN, the components needed to use it like a server and client, and how to set up a local SVN repository in Xcode. Finally, it covers common SVN terms and commands like checkout, commit, update, and important things to remember when using SVN.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 21

9-Dec-2010

SVN management using XCode-


SCM

Presented by:
Rachna A
What is a version?

One of a sequence of copies of a program, each


incorporating new modifications.  Each version is usually
identified by a number, commonly of the form X.Y where X is
the major version number and Y is the release number.
What is version control or SCM?

SCM stands for software configuration management


In software engineering, software configuration
management (SCM) is the task of tracking and controlling
changes in the software. Configuration management
practices include revision control and the establishment of
baselines.
What are the uses of version control?

1. It provides one method for an entire team to use; everybody


operates under the same 'ground rules'.
2. The ability to track changes promotes accountability and makes
it easier to find the right person to solve problems in the
materials maintained.
3. A list of exact changes made can be generated quickly and
easily, making it easier to advise users of the information on how
it has changed from version to version.
4. It is easy to 'roll back' to an earlier version of the information,
if a serious mistake was made during a change.
5. Regulates multiple users wanting to change the same file
What is SVN?

• Stands for Subversion. 


• Version control system that is used. 
• It is open source and free software.
What do you  need to use SVN?

1. SVN Server - A server where you can host your repository. eg:-
projectlocker or create a local repository

2. SVN client - on each users system. GUI based SVN clients are
the best eg:- xcode
 
Other SVN clients available in the market:
Windows - Tortoise SVN
Mac - Versions, SmartSVN, svnX
SVN Folder Structure
Trunk: The trunk is the main line of development in a SVN
repository.
 
Branch: A branch is a side-line of development created to make
larger, experimental or disrupting work without annoying users of the
trunk version. Also, branches can be used to create development
lines for multiple versions of the same product, like having a place to
backport bugfixes into a stable release.
 
Tags: Finally, tags are markers to highlight notable revisions in the
history of the repository, usually things like "this was released as
1.0".
How to create a local repository on your system?

Open the terminal and navigate to the desired path


eg:- /Users/Shared/subversion

Type 'svnadmin create <Repository Name>'


eg:- svnadmin create SampleRepository
Tell Xcode about your repository

 
Step 1: Select SCM->Repositories menu item
 
 
 
 Step 2: Select Configure option in the pop up dialog
                                                                            contd...
Tell Xcode about your repository
  contd....
Step 3: In the XCode preferences screen, select the '+' sign to add a
new repository
Tell Xcode about your repository
  contd....
 
Step 4: Type in the name of the repository and select the SCM
system

Step 5: Type in the URL of the repository


Tell Xcode about your repository
  contd....
 
 
Tell Xcode about your repository
  contd....
 Step 6: Import your project into the repository

 
Tell Xcode about your repository
  contd....
 Step 7: Checkout the project to get a working copy

 
Tell Xcode about your repository
  contd....
 Step 8: Select Project->Edit Project Settings -> General tab
and click on 'Configure Roots and SCM' button

 
Tell Xcode about your repository
  contd....
 Step 9: Right-click on 'Groups and Files' in the XCode window and
select SCM in the pop-up

 
How to get the URL of your repository

• Local Repository
URL syntax - file://<repository path>
eg:- file:///Users/Shared/subversion/SampleRepository

• Shared Repository
1. Log in to project locker
2. Select User Home link
3. Select the URL corresponding to the specific project.
eg:- https://equity2.projectlocker.com/RapidValue/AngiesList_iPhone/svn
SVN Terms
Checkout: getting a new working copy of the files from the repository
onto a local computer. 
 
Commit: Send changes from your working copy to the repository
 
Update: Get latest changes in the repository into your local system
Add: Add files and directories to your working copy and schedule
them for addition to the repository. They will be uploaded and added
to the repository on your next commit.
                                                                                contd...
SVN Terms
Delete: Items specified are scheduled for deletion upon the next
commit. Files (and directories that have not been committed) are
immediately removed from the working copy. 
 
Note: Do not use this command unless it is really needed. Be very
careful while using this command on a live project repository

Diff: Shows the differences between two version of a file

Revert: Undo all local edits

Resolve: Resolve “conflicted” state on working copy files or


directories.

 
 
Things to remember

• Do not experiment with a live project repository under any


circumstances. Create a local repository for experimental
purposes.
•  Always change the password of ProjectLocker after the
first login.
• When adding new files to your project always remember
to do a project commit. For file modifications however, it
is sufficient to commit only the specific files.
Thank you

You might also like