Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Eraserhead

macrumors G4
Original poster
Nov 3, 2005
10,434
12,250
UK
I have decided to make my program open-source and to allow other people to contribute want to setup SVN. I know absolutely nothing about it, and I am wondering how you can get it to work with Xcode (which appears to have built in support)?

Also how do you set permissions so that you can check what changes have been made and to stop anonymous contributions?


Also is there anything someone who knows nothing about SVN/Subversion should know?


Thanks
 

ChrisA

macrumors G5
Jan 5, 2006
12,584
1,701
Redondo Beach, California
I have decided to make my program open-source and to allow other people to contribute want to setup SVN.

First you need a server that is on the public internet. SVN is not so usfull if others can't get to it. You best option is to get an account on Source Forge. They offer free acounts to open source projects and provide CVS (I don't think they use SVN?) email lists, web space and a bug tracking system. Everything you will need. Much better to use their service then set up you own. Also when peole are searching for a project they might think to search Source Forge but would never in a million years think to look on your server
http://sourceforge.net/
 

Eraserhead

macrumors G4
Original poster
Nov 3, 2005
10,434
12,250
UK
OK it's hosted with Google Code, but I don't understand how you get Xcode to connect to the Google Code source repository without just using the command line.
 

kainjow

Moderator emeritus
Jun 15, 2000
7,958
7
I do not believe Xcode can do checkouts. So I think you have to do that with Terminal:

Code:
svn co http://code.google.com/...

You will probably have to add your .xcodeproj to the repository:

Code:
svn add *.xcodeproj
svn commit

Then you should be able to open your Xcode project, Get Info on your project in the Groups & Files column, and then enable it:

View attachment 74469

Then right-click the Groups & Files column, and check SCM. That will show the Subversion status of each file in your Xcode project.

View attachment 74470
 

lazydog

macrumors 6502a
Sep 3, 2005
709
6
Cramlington, UK
I've had nothing but trouble with any SCM system and Xcode. But it's fixed in Leopard w/Xcode 3. Very simple, very usable.
I look forward to Xcode 3.

I have had problems with Xcode and SCM (Subversion) too. I think I've nearly narrowed down the cause for the problem I'm having though. It seems if I add a directory by reference (blue folder icons rather than yellow) which is not source code managed, ie not in a repository, then Xcode will loose track of which source files have been updated or are out of date. For example if I modify a file then it shows up as modifed in the SCM list as you would expect. If I then quite Xcode then go back in, that same file is no longer flagged as modified. No matter how many times I hit 'refresh project' Xcode will not see that file as modified. If I delete the referenced folder (which has is not attached to any repository) then Xcode will see the modified file and everything works as you would expect.

b e n
 

sujithkrishnan

macrumors 6502
May 9, 2008
265
0
Bangalore
Well terminal works. Thanks for the info guys :). I'm looking forward to Leopard more now!


Terminal is quite good....

1. svn co <url>
2. svn add <filename>
3. svn delete <filename>
4. svn commit -m <message>

I think this much pretty enough to do basic SVN stuff.

If you want to to compare use "svn diff" . .
 

Eraserhead

macrumors G4
Original poster
Nov 3, 2005
10,434
12,250
UK
^^ Thanks, I've been using SVN on the command line for a while and can use it effectively, but a GUI is nicer if its available.
 

Krevnik

macrumors 601
Sep 8, 2003
4,100
1,309
I only ever use SVN in Xcode to look at revision comments and using FileMerge. Everything else I just feel more comfortable using the command line.

But I'm pretty sure kainjow is right and you can't actually checkout using Xcode.

XCode can make checkouts in 3.x.

I wouldn't use it for imports due to a bug which prevents you from importing, making directories/etc into the root of a SVN repo. I filed a bug way, way back... still haven't seen it fixed yet.
 

Krevnik

macrumors 601
Sep 8, 2003
4,100
1,309
Not with SSH+SVN which Sourceforge uses.

Apple have really ****ed up their SCM support in Xcode (though to be fair Microsoft Sourcesafe is worse).

Last time I checked, it works, but I also use public key auth on my own servers, which may help. I don't think I have done much with SSH+SVN using actual passwords, but I don't see why it won't work if you specify the username/password correctly.
 

Gruffalo

macrumors newbie
Jan 27, 2006
13
0
Not with SSH+SVN which Sourceforge uses.

Apple have really ****ed up their SCM support in Xcode (though to be fair Microsoft Sourcesafe is worse).

I'm coming into this a bit late but....what about not going with SVN at all and trying out one of the DVCS systems instead, Mercurial, Git, Bazzar etc? Personally, I'd go with Mercurial, using Bitbucket as a backup/public repository. The huge benefit is the the local copy contains the entire history and you can work as well disconnected from the central repository as you can connected.

Disclaimer: I confess I've never even attempted to use the built in SVN support in Xcode, so I don't know what benefits it offers or what you would lose if you didn't use it.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.