Mac 操作系统安装 SVN server教程(Subversion With Mac OS X Tutorial)
Find recent articles on my github page: rubyrobot.github.io
© 2006-2014 Imagine Ecommerce
Subversion With Mac OS X Tutorial
Updated: April 2011
Subversion is a version control system that allows you to work with other people on a project and switch back easily to every version ever made. It can be used for all kinds of projects like application source code, web sites, even images or just simple text documents. Once you have it all set up and followed all the steps described below, it is easy to handle and a very useful thing – not just for computer geeks.
About This Tutorial
This tutorial explains the basics from installing subversion and getting started to working with other people on the same project. It is written primarly for Mac OS X users, but since Subversion itself works the same on all platforms, most of this tutorial should apply to Linux or Windows users, too.
The Concept of Subversion
Subversion works by setting up a central repository on a server or local computer that every user connects to and downloads a personal working copy from. When changes are made to the working copy, they can be uploaded to the repository. If these changes conflict with changes other people may have uploaded since the last time you updated your working copy, subversion tries to merge these files and solve the conflicts.
Downloading and Installing Subversion
I recommend downloading the Subversion Mac OS X package from Collabnet
Download and run the installer. Note that Subversion itself doesn't feature a graphical user interface, so you won't find any new files in your application directory after installation. Instead it installs some command line commands into the directory /opt/subversion/bin* on your hard drive.*Note: For other Subversion packages this path is usually /usr/local/bin.
To be able to call the Subversion commands from every directory, you must add it to your path. If you don't know what that means, don't worry. Just follow the instructions.
Open the Terminal application. It can be found in the /Applications/Utilities folder. Whenever you see below a line starting with a dollar sign, you should type the text after the dollar sign in your terminal and hit return.
Start by creating a new text file called '.bash_profile', i.e. with the command line text editor pico:
Add the following line to the text file:
Now hit Control-X, then confirm saving the file with 'y', followed by return.
You have just added Subversions's location to your path. Let Terminal read this file to know the path has changed (there's an empty space between the dots):
Creating a Sample Subversion Project
First we will need to set up a Subversion repository on our local computer. That is the place to store all versions of our project. Now create your repository like this:
This will create a repository named 'SVNrep' in your your home directory, although svnadmin won't give you any feedback. If you don't trust me on this, you can check the existence of this folder by typing 'ls' in the terminal or looking for it in the Finder.
Next we create our sample project. Create a new folder and an empty file named 'test.txt' inside this folder:
$ touch test/test.txt
Let's import this project into the repository. Type in your terminal, by replacing 'sara' with your own user name:
This will output:
Committed revision 1.
We have just imported the folder 'test' into the repository 'SVNrep'. Each version in the repository is called a "revision" and is identified by a unique number. Always provide a short message ('-m') of the changes you made to the repository like we just did!
Retrieving Files From Subversion
Now we get a copy to work on from the repository. This process is called "check out":
The output will show all files added ('A') to our working copy:
Checked out revision 1.
Change into the working copy directory by typing:
Next check the content of our working copy in the terminal:
This will output the directory including hidden files:
.
..
.svn
test.txt
Note the hidden directory '.svn'. This holds some subversion info like the name of the repository, so you don't have to type that in the future. If you would like a copy of your repository without this hidden directory in every folder, you have to export a copy:
$ svn export file:///Users/your_user_name/SVNrep/test test-copy
This copy is now safe to deploy on the web. It is not a working copy though, so you can't commit changes back to the repository from this folder.
Time For Changes
It is time to make some changes to our file and save it back to the repository. Open 'test.txt' from the working copy with your favourite text editor and type "Hello world" or whatever you are up to, then save the file.
You can then query Subversion to find out the differences between the repository and your copy:
This will state that our file has been modified ('M'):
Now we want to update the repository with the changes we made. This process is called "committing":
This will output:
Transmitting file data .
Committed revision 2.
Dealing With All These Versions
Let's assume, that someone else working on your project made changes to the repository. You will want to update your local working copy to incorporate the changes:
Because in our example nobody else made changes to the repository, this will do nothing and output:
To list all revisions in the repository, type:
This will output a list of all revisions with it's messages:
r2 | sara | 2006-10-08 16:41:46 +0200 (Sun, 08 Oct 2006) | 1 line
Added some text
------------------------------------------------------------------------
r1 | sara | 2006-10-08 16:10:36 +0200 (Sun, 08 Oct 2006) | 1 line
Initial import
------------------------------------------------------------------------
If you would like to see the exact differing lines to a specific revision, i.e. revision 1, just type:
The output states that the line "Hello world" has been added ("+"):
--- test.txt (revision 1)
+++ test.txt (working copy)
@@ -0,0 +1 @@
+Hello world
Maybe you would then rather like to switch back to an older revision:
This will update ('U') your copy back to revision 1 and output:
Updated to revision 1.
Note that all commands are used on the whole current working directory. You could also provide a single filename for each of these commands, i.e. 'svn update test.txt'.
Renaming, Adding And Deleting Files From The Repository
Sometimes you may add new files to your working copy.
They will not be included in the repository though, unless you manually add them to the repository:
$ svn commit -m "added new file"
If you later would like to remove a file from the repository, type likewise:
$ svn commit -m "deleted file"
Note that you should never delete or rename files from your working copy without Subversion knowing. You can modify inside your files as much as you like. But if you just rename files or move them to another folder, Subversion will loose track of them. Always use 'svn' commands for those operations.
This is how you move a file accordingly:
$ svn commit -m "moved file"
All of these commands will not only affect the repository, but your working copy as well. So you should never have to delete or rename a file with your Finder.
If you are working alone on a project, this is it! Well, basicly. The next chapter will explain dealing with multiple users.
Working With Other People
To act as if someone else was working on your project, you could now check out a second working copy named i.e. 'test-copy2' into your home directory and make some more changes to it. Then commit it to the repository following the steps from above.
Now think of a possible conflict: two people have downloaded their working copy and started working on the same file. When Sara commits her files before Michael does, Michael will get an error message when committing because his copy is not up to date any more:
Sending test.txt
svn: Commit failed (details follow):
svn: Out of date: '/test/test.txt' in transaction '3-1'
Michael will then first have to update his working copy by typing 'svn update'. This will merge Sara's earlier changes into Michael's working copy, line by line.
Michael can now commit the merged copy to the repository. In some rare cases however, there my be a conflict that Subversion cannot solve itself. It will then create three files in Michael's working copy:
test.txt.r2
test.txt.r3
Michael now has to manually put the pieces together in the file 'test.txt', deciding which changes to keep. Only when this is made and the three extra files are deleted, Subversion will allow Michael to commit his files.
Now go play around with it to get used to it. Of course there is more to Subversion. You could type "svn help" in the terminal to list all commands or read the freely available SVNbook athttp://svnbook.red-bean.com
Graphical User Interfaces
Many people don't like working with the terminal. They find it complicated to remember the text commands, as opposed to clicking on buttons in applications. There is a couple of free or commercial apps available on the internet, that provide a graphical user interface for Subversion commands. I think it's best practice to learn Subversion from the terminal first, before you use a graphical client, to understand the way subversion works better.
A nice and free GUI for Mac OS X is svnX. To manage your working copies from the same application that you write your code with, the text editor TextMate is a good choice. TextMate includes a Subversion bundle that allows you to easily invoke most Subversion commands from the menu. Only once for setting up the repository and checking out the first working copy, you will have to use the terminal. After that, just press Shift-Control-A to open the Subversion bundle menu.
Questions or comments? [121]
Alpha () said 2421 Tage zuvor:
Collection of AppleScripts for Finder (made by me) can be also useful to make the most frequent operations easier.
Charles Lloyd () said 2408 Tage zuvor:
This was the best svn quick-start tutorial I found on the web (especially since I’m a MacOSX user). I glanced at a few other articles and didn’t see clear instructions for geting up and running like I found here. An article this well-written is a rare find on the net. I was up and running with my new svn repository in a matter of five minutes.
Raj () said 2148 Tage zuvor:
Excellent tutorial on the basics. Thanks! Got me up to speed enough to get a simple repository going.
(However, in trying to print this from different computers, the right margin cuts off the text. You might want to adjust your print css to increase the right margin a bit.)
Thanks again!
Niko (http://www.rubyrobot.org) said 2139 Tage zuvor:
Printing should work now! Tested with Firefox.
Silverhammer (www.silverhammer.org) said 2138 Tage zuvor:
Echoing the previous comments, this is by far the best quickstart I’ve been able to find for running SVN on Mac OS X. Thank you very much.
Ryan () said 2128 Tage zuvor:
I’d just like to say thank you for writing this straight forward tutorial. This is the first tutorial that I have came across that makes perfect sense and allowed me to get started!
AJ () said 2113 Tage zuvor:
Like others here I looked at a bundle of other ‘quick-start’ tutorials but found none that really seemed to explain subversion as well as you have done here.
I am now ready to roll up my sleeves and begin playing around with subversion – thanks!
Erinc () said 2108 Tage zuvor:
Your tutorial helped me a lot too. Thank you for your time.
Alan Bristow (http://www.fluffdesign.com) said 2085 Tage zuvor:
Thanks lots for this. On the GUI front, I am looking at http://zigzig.com/
Olly () said 2071 Tage zuvor:
Hi, Can you help me?
I’ve changed the .bash_profile file as you have said. It now looks like this:
————————-
export PATH=/user/local/bin:$PATH# Setting PATH for MacPython 2.5 # The orginal version is saved in .bash_profile.pysave
PATH=”/Library/Frameworks/Python.framework/Versions/Current/bin:${PATH}”
export PATH
————————-But the svnadmin is returning a ‘command not found’ message. I’m guessing this might have something to do with the Python path thing (I played around with Python a while back but never really use it). I’ve tried your line of code at the start and end of the file, but not luck.
Any assistance much appreciated.
Niko (http://wwwww.rubyrobot.org) said 2069 Tage zuvor:
Hi Olly,
your .bash_profile should work. Are you sure you installed svn correctly? Try calling it directly with it’s full path: “/usr/local/bin/svnadmin”
If that doesn’t work, you can search your hard disk like this:
“find / -name svnadmin”Olly () said 2069 Tage zuvor:
Here is what I get when I type in it’s full path.
Le-Big-Mac:~ Olly$ /usr/local/bin/svnadmin
Type ‘svnadmin help’ for usage.
Le-Big-Mac:~ Olly$ svnadmin help
-bash: svnadmin: command not found
Le-Big-Mac:~ Olly$Sorry to bother you, but can you advise what this means? I’m new to *nix and Subversion and really need to learn it quick!
Many thanks for any assistance.
Niko (http://www.rubyrobot.org) said 2067 Tage zuvor:
I found it, it’s really simple: a typo in your .bash_profile
Make sure you change the faulty line:
export PATH=/user/local/bin:$PATH
to:
export PATH=/usr/local/bin:$PATH
That should be it!
Olly () said 2067 Tage zuvor:
Groovy! Thanks for your help.
Nick () said 2050 Tage zuvor:
How do I uninstall this client?
Niko (http://www.rubyrobot.org) said 2046 Tage zuvor:
Nick: most unix tools don’t include an uninstall script by default. In this case look inside the package and see what files are included, then delete by hand.
Or just delete every file in /usr/local/bin and /usr/local/share/man that starts with “svn”. It’s not necessary though. Subversion uses only very little space on your hard disk and does not interfere with your system.
lobsterman (caspar.bgsu.edu/~software/java/) said 2033 Tage zuvor:
i have been a newbie to command line stuff and i have been struggling with working through the begining of the instructions – at the ..bash_profile i kept getting
-bash: ..bash_profile: command not found
until i realized rather by accident that there was meant to be a space between the two dots. a note in the instructions to that would have been helpful, other than that things work like a gem.
thanks, ciao,
Quiz (http://www.quizduell.com) said 2032 Tage zuvor:
Very, very good tutorial. Thank you very much.
Niko (http://www.rubyrobot.org) said 2031 Tage zuvor:
Thanks for all your friendly comments! It’s good to see that this tutorial is helpful for so many people.
Calvin (http://www.sqlbuddy.com/) said 2031 Tage zuvor:
Oh man, I just spent an hour trying to set my path. This page was the first one that said to type the . .bash_profile. Worked like a charm after that. Thanks a lot!
Carlos Le Mare () said 2018 Tage zuvor:
It work!!!… I having issues trying to updates files in my repository SCPlugin with authentication… but working with command line reveals the problem… for some reason (I don’t know why yet) my subversion is trying to use my username in mac os x to upload the files, but I use another username in the repository. Anybody knows how to change the default username? (mac os x 10.4.11)
Anthony (http://www.anthonysmith.me.uk/) said 2011 Tage zuvor:
Thanks – I’ve been meaning to get to grips with svn for ages, and it’s not too difficult after all!
TrainMe (http://trainme.ru) said 2010 Tage zuvor:
How i can commit just one file?
Niko (http://www.rubyrobot.org) said 2010 Tage zuvor:
Carlos: Yes, that’s standard behaviour for most shell commands. You should be able to provide your username in the the subversion configuration file or use “-l username” directly when connecting from command line.
Trainme: to commit just one file, just specify the file name!
svn commit myfilename -m “Just one file!”
edouard () said 1944 Tage zuvor:
thank’s for this tutorial … it has been very helpful since svnX seems not to work with mac osX.5 … at least the terminal performs quite well the same ..
^^ed.
freefone () said 1943 Tage zuvor:
excellent. excellent. thank you!!
was wondering if someone here can help: i’d like to keep both a local and remote repository. is there a way to commit to a local repository and then replicate the local server copy to a remote location. thx.Niko () said 1938 Tage zuvor:
I don’t see how duplicating a repository would be useful, if not even harmful – unless it’s for reasons of backup. In that case simply copy the repository folder to the remote location via ftp or rsync…
PXD () said 1931 Tage zuvor:
Excellent article, nice and easy :)
Wolfgang () said 1878 Tage zuvor:
Thank you very much for this tutorial. Your work is very much appreciated!
Beltonaki () said 1850 Tage zuvor:
This tutorial is still very nice indeed. Thank you for making subversion an easy start! :)
Raf (www.innovat-concepts.com) said 1845 Tage zuvor:
Great tutorial, thanks a lot :)
Patrick () said 1820 Tage zuvor:
Thanks for the tutorial, it was very helpful.
I’m looking at Xcode 3.1 and it seems that all of most of the commands in the tutorial are duplicated in the SCM menu (add, commit, etc.). Is that the case? If so, can I skip learning the terminal commands (although of course learning the concepts) and rely on the Xcode 3.1 SCM menu?
RP () said 1768 Tage zuvor:
I have an external drive called ‘SVN’ that I’d like to use as my repository (feeling it’s best to have it somewhere other than my local machine), but I don’t know how to set this drive as my repository. Can anyone help with the proper commands? Thanks.
Christelle () said 1747 Tage zuvor:
Excellent tutorial. Everything works like a charm, I love it!
Rocco (www.getzs.com) said 1713 Tage zuvor:
I would like to add my voice to the chorus of thankful people. Your tutorial is exactly what I was looking for to get started. Thanks!
Arthur () said 1712 Tage zuvor:
Sorry, but after I`ve typed this “svn status” I saw this line “svn: warning: ‘.’ is not a working copy”
why?! (sorry for my English) and how can I correct it?
Niko (http://www.rubyrobot.org) said 1711 Tage zuvor:
Arthur: Make sure are in the directory of your working copy, before calling svn commands: ‘cd test-copy’
Emmanuel Seynaeve (none) said 1711 Tage zuvor:
Thanks for the great tutorial. Really the best one out there!
Per Andr脙漏 R脙赂nsen (http://peshmedia.no) said 1704 Tage zuvor:
Thanks, great help!
Moses Hall (www.blugs.com) said 1692 Tage zuvor:
I think it would be helpful to potential downloaders to mention that installer Subversion-1.6.1.zip is Intel-only. The installer did not check the machine architecture or give any warnings, it just installed useless Intel binaries on my PowerPC Mac. Any chance of a universal version?
tb () said 1691 Tage zuvor:
… second the last comment :-(
Warning would be nice, what the best way to uninstall it now? Will this work or is there more files scattered throughout the system:rm /usr/local/bin/svn*
tb () said 1691 Tage zuvor:
… this works fine:
http://subversion.tigris.org/getting.html#osx
http://downloads.open.collab.net/binaries.html
Niko (http://www.rubyrobot.org) said 1689 Tage zuvor:
Sorry about the intel-only version. I will try to provide a universal package within the next few days. For now, PPC users are encouraged to download from open.collab.net. (See comment above)
PS: You don’t have to remove the intel version before installing the universal package, as the files will be overwritten.
Scott (http://stereointeractive.com/blog) said 1677 Tage zuvor:
This is a great tutorial. The SVN book is good, but it’s nice to have this summary all on one page. Thanks so much.
Damien McKenna (http://mc-kenna.com/) said 1669 Tage zuvor:
Good article, very informative, and timely given that you wrote it around SVN 1.6.FYI the cross-platform GUI tool SmartSVN (smartsvn.com) was also updated to work with SVN 1.6, and it’s a really good GUI tool.
Jeremy Whitlock (http://www.thoughtspark.org) said 1668 Tage zuvor:
Nice article but you might want to reconsider the binary you’re linking to. Yes, I know it appears to be one you’re maintaining but there is another that is much more featureful located here:
http://tinyurl.com/svn-osx
It works on Tiger+, all 4 supported OS X CPU architectures (ppc, i386, ppc64 and x86_64), it includes all language bindings (Java, Perl, Python and Ruby) and includes the Apache modules. Oh…and svnserve is built with SASL support. Not trying be a pain but it might save you some time maintaining it yourself.
Niko (http://www.rubyrobot.org) said 1661 Tage zuvor:
OK… I removed the download link to my package from the article and do suggest downloading from Collabnet.
The goal was to maintain a smaller package that includes only the files necessary for basic Subversion usage, but it doesn’t really make sense spending the time maintaining a package, just to save a few megabytes hard disk space.
Le Thanh Duc Mr () said 1655 Tage zuvor:
Really helpful.
Deeply appreciate for your workBrendan Wood () said 1654 Tage zuvor:
Thanks for the tutorial! I’ve installed SCPlugin and it works great, but there were some hiccups. SCPlugin allows you to control Subversion from contextual menus in the Finder, making life much easier. But if you’re running Leopard, make sure you disable the Finder’s icon preview option (View —> Show View Options) for any folders that contain files linked to a repository…it screws up SCPlugin’s “badges” that indicate the status of files.
Patrick () said 1643 Tage zuvor:
I just found this tutorial. It is very well done but I am having problems.
Whenever I type in . .bash_profile I get a command not found message, and I am making sure that I include the space. Can you help? it would be much appreciated.Niko (http://www.rubyrobot.org) said 1641 Tage zuvor:
Patrick: make sure 1) the file .bash_profile exists in your home directory, 2) your working directory is your home directory when typing “. .bash_profile”
Also check if the file’s content is correct, see article above!
Domenico () said 1637 Tage zuvor:
I was experiencing troubles with the installation (always getting command not found) and at last, reading and re-reading their documentation, I realized that the guys at collabnet moved all the stuff into /opt/subversion in place of /usr/local/bin. Check their Readme file. I thought it might be convenient you to know it. All the best.
Niko (http://www.rubyrobot.org) said 1636 Tage zuvor:
Domenico: thanks for your comment. I have updated the article.
The path to the Subversion binaries from the Collabnet package is/opt/subversion/bin
Sorry for everyone who has experienced trouble with this.
thomas () said 1636 Tage zuvor:
Question,
I would like to work with a friend of mine on a java project (Eclipse).
The plan is to set up my computer (Mac Pro) as a server (Apache), everything is supposed to go through my computer.
Is there a chance to get some help how to do this.
Thank you a lotMansi () said 1608 Tage zuvor:
How do i set the username and pasword.
Also is it possible to get anonymous access. If so how do i go about this.amenity () said 1592 Tage zuvor:
Thanks, this is by far the best tutorial I’ve found.
titanium_geek (http://www.creativehedgehog.com) said 1589 Tage zuvor:
Absolutely brilliant tutorial. This is the kind of thing I wish I was writing. Fantastic, thanks.
Grant Gortsema () said 1581 Tage zuvor:
Was thinking of moving to subversion from ClearCase and before that StarTeam for quite a while now. Now I am moving jobs to one that uses it and wanted to get a quick heads up on setting it up locally so I don’t look like a total newb. This quick-start was perfect for me! Thanks so much. One of my biggest pet peeves is tutorials that leave out steps and leave me with bolloxed partially installed packages on my computer. Everything worked like a charm and I am off to figure out how to get MyEclipse to work with my new repository. Thank you again!
-Grant Gortsema
karen (tagstrong.com) said 1572 Tage zuvor:
i am trying to figure out how to checkout my local repository to my web host.
I cant run a server on this server but i could source control my files this way.
anybody know how to do that?
Josh () said 1558 Tage zuvor:
Trying to figure out how to share the repository’s files on my Mac with a colleagues Mac. Can work it out. Help anyone?
~Josh
Geoffrey Faivre-Malloy (http://bleedinghemorrhoidscures.com) said 1557 Tage zuvor:
Woot! Got me up and running. Thanks for the tutorial!
It was EXACTLY what I needed :)
G-Man
Anuradha Uduwage (http://anublog.colombounplug.com) said 1527 Tage zuvor:
Thanks for the great post. I am very new to mac in fact this is my first week . I downloaded the package from Collab.net But just before the installation i read the message and realize that its going to install SubVersion server along with the client. I do all my development on eclipse. I want to keep my google code project insync. Does this mean I still have to install the client and the server both on my mac?
Thanks
AnuNiko (http://www.rubyrobot.org) said 1525 Tage zuvor:
Hi Anuradha,
just go ahead and install both server and client. It doesn’t take up much disk space.
TonyRLA () said 1483 Tage zuvor:
First, I want to echo what everyone else has said about this excellent tutorial. I’ve been flailing around trying to get SVN working for months by various tutorials. I only wish that I had found yours earlier. I don’t know how I didn’t – I guess maybe Google likes you better now. My only suggestion is that you or another contributor might want to make a screencast so the slower people (me) can see exactly what you mean.
Anyway, the reason I’m writing is to ask your advice on configuring the right SVNset-up for my needs. Here’s my story:
I have a live managed VPS running Centos 5x with Cpanel WHM, a couple other small shared hosts at different locations, a test server on my on an older Mac running Ubuntu on my LAN, and I develop locally on my MacBook Pro using a combination of Adobe CS3, rubberbands, scotch tape, and I’m interested in learning how to use one of the IDEs likely Apatana. I have various sites on the remote servers obviously, plus the actual Centos configuration of the server itself – though I’m likely to switch hosts to use my growing Ubuntu love.
I’d like to be able to coordinate all of this (obviously) with SVN – including the actual config of the VPS (I’ve screwed that up a couple times and without a snapshot on hand to roll back to, I’ve had to rebuild from scratch a couple times.
Right now I’ve got a proliferation of files: one set on the live servers (VPS and others) one set on my test server, plus a set of files and scraps on my laptop. Not only is this wasting tons of storage, it’s also confusing as hell. And presently I’m not developing with anyone else but shortly I’ll need to give others access to the development files.
I know that this is exactly what version control is supposed to solve, but I just haven’t been able to figure my way through all the ins & outs. I’m sure there are other like me.
Niko, can you please explain to me using your apparent gift for plain English how I can get this under control? How do I manage and sync everything properly and consolidate all my resources. If you don’t have the time or energy to talk me through this, maybe you could point me to another web resource?
Thanks again.
Orlando Leite (http://orlleite.com) said 1470 Tage zuvor:
Man! Awesome! All that I needed.
Predictii Pariuri (http://www.omnibet.ro/) said 1459 Tage zuvor:
Great choice by picking Subversion. I use Subversion myself, and the reason why I like it the most is because Subversion tracks structure of folders. In my opinion, it is the best version control system out there. Good luck with it
Vivs () said 1459 Tage zuvor:
Great work !!!!
But i just want to know that , is there any need to create trunk folder while setting up svn repository for the project as many people suggest to do so. But you haven’t shown any steps regarding trunk. Please suggest me related to same.
Regards
VivsNiko (www.rubyrobot.org) said 1459 Tage zuvor:
Vivs,
Not sure if that’s the reason.. but creating a trunk folder makes it easy to create branches of your project.
Martin (http://www.home-inspection-software.com) said 1453 Tage zuvor:
I need to completely delete/erase subversion and reinstall. I know nothing, I’m stupid, I’ll admit it, so I would REALLY appreciate step-by-step instructions on how to do this, without any of the geek lingo. A “How to remove Subversion from your Mac for the Complete Idiot” sort of thing — it would probably become wildly popular.
Tah.
Niko (www.rubyrobot.org) said 1452 Tage zuvor:
Martin, just reinstall Subversion from the package. As for the repositories, they are just folders you can delete in the finder.
hallodom (www.hallodom.co.uk) said 1423 Tage zuvor:
Great article – SVN used to be foggy but this has really helped!
I agree with some of the comments that technical requirements for the binaries and versions should be written into the article.
Luckily I have an Intel machine and all worked fine.
Mustafa () said 1421 Tage zuvor:
Thanks for a wonderful article.
I have a question. How can we access this repository remotely?
On the local machine, where you’ve setup the svn repository, it can be accessed using file:/// but this doesn’t work if the repository is on a remote machine (in my case, running Mac OS X 10.4) – IF YOU MOUNT THE REMOTE MACHINE’S DRIVE. How can i access this repository remotely? Any idea?
Niko (www.rubyrobot.org) said 1416 Tage zuvor:
Mustafa: To access remotely, you can i.e. set up apache to serve svn.
Or, much easier, if you can access the svn server via ssh, install the svn client on your client machine and checkout via
“svn co svn+ssh://your.remote-server.com/path/to/svn/repo”Mustafa () said 1414 Tage zuvor:
Thanks, appreciated.
sid (http://sidharthjuyal.tech.officelive.com/default.aspx) said 1386 Tage zuvor:
thanks for the “Hello World” demo, that was great help!!
I’ve a question – what was that I downloaded from collabnet and then modified my .bash_profile? You said it would add some commandline tools, but all the command you used in here were already working like ‘svnadmin’ and ‘svn’
Infinity () said 1368 Tage zuvor:
Hello,
This is nice tutorial. For begginer or people who don’t like Terminal.app, SPMPTmake this job as well. It’s a package which include Subversion server, Trac (edgewall) and python mod_python. It’s works out of the box.
http://sonique54.free.fr/spmpt/Matt () said 1362 Tage zuvor:
Thanks for this terrific tutorial! I’ve wanted to learn how to use subversion for a while but couldn’t wrap my head around it until I read your article.
I’m still a little unclear on real world application of subversion. For example, how would one use subversion in editing a wordpress theme?
Would you create a repository for the entire wordpress installation or just the theme files?
Thanks,
mattNeil () said 1337 Tage zuvor:
Thank you very much for this informative tutorial. I wish you prosperity in your endeavours
webthesurfi rugs webdesign (http://freind.org/webthesurfi-rugs-webdesign.html) said 1335 Tage zuvor:
I芒鈧劉m still a little unclear on real world application of subversion. For example, how would one use subversion in editing a wordpress theme? Would you create a repository for the entire wordpress installation or just the theme files?
Mike () said 1322 Tage zuvor:
I would recommend adding the path to the command line prompt in your examples.
Running the commands in the wrong directory causes errors… your tutorial doesn’t help me get around this.
Adding the path would make things far clearer.
Thanks.
Sushi () said 1320 Tage zuvor:
Good article thank you!
Been a real help!andy (http://www.buisness-money.com) said 1313 Tage zuvor:
it is the best version control system out there. Best Regards
psychic (http://www.thewhatbox.com) said 1206 Tage zuvor:
Great article. I always like reading insight on Mac stuff. Call me a geek.
online casino (http://onlinecasino-free.com/) said 1206 Tage zuvor:
Thank you so much for the instructions.
BTW, You did a typo in the begin of your article.
About This Tuturial <—
I hope that helps.
eurosportbet (http://www.paris-sports.info/eurosportbet.php) said 1200 Tage zuvor:
Bonjour et merci pour les informations bonne continuation
Anne (http://umpeople.memphis.edu/awarlmnt) said 1197 Tage zuvor:
Great novice tutorial — thank you!!
Bruce Cichowlas () said 1176 Tage zuvor:
I ran into an error
svn: no such table: rep_cache
However, the advice at this site seems to be helpful:
http://trac.apostrophenow.org/wiki/ManualInstallation?
version=35
Bruce
arono () said 1164 Tage zuvor:
i spent 4 hours yesterday to understand and set up subversion on mac and windows. I could have done it in 5 minutes if i had find your wonderfull tuto before.
Thanks anyway !cloudobjects (cloudobjects.blogspot.com) said 1160 Tage zuvor:
I have written a blog post about graphical user interfaces for svn on Mac OS X on http://cloudobjects.blogspot.com/2010/10/using-subversion-on-mac-os.html.
I coud not find a satisfying non-commercial all in one solution. Hints to better solutions are greatly appreciated.dave () said 1134 Tage zuvor:
Thanks this was very helpful!
I have one (sorta dumb question I think) question. Does anything ever change in the original test directory that the working copy is made from? Is there something that should happen to that directory after committing?
Niko (www.rubyrobot.org) said 1132 Tage zuvor:
Dave, you can delete the original directory after it has been imported into the repository, files in this directory will not be changed.
Jay () said 1131 Tage zuvor:
Very very useful!
Matjaz () said 1090 Tage zuvor:
i want to connect apache+svn, and to do so you need to add these two lines in httpd.conf
LoadModule dav_svn_module /opt/subversion/lib/svn-apache/mod_dav_svn.so
LoadModule authz_svn_module /opt/subversion/lib/svn-apache/mod_authz_svn.so
but i always get an error
./apachectl: line 78: 1913 Segmentation fault $HTTPD -k $ARGVPierreK () said 1033 Tage zuvor:
Excellent Stuff!
Always nice to find easy tutorials on the web. This helped me a lot.
Thanks a bunch!
Pierre
Greg () said 1019 Tage zuvor:
This is an excellent tutorial, but you should update it.
Subversion is now (10.5 at least) installed on every Mac OSX. The installation instructions you give are now not needed. You could give instructions on updating subversion, but it probably doesn’t need to be the first thing you discuss.
Zihan Chen () said 1017 Tage zuvor:
Really an excellent tutorial, like it. Thank you.
Have subversion installed and svnx works like a charm
Chrizz () said 988 Tage zuvor:
Thanks for this tutorial.
But it didn’t work for me. I installed the latest svn. When i try to create a new text file called ‘.bash_profile’, terminal says 芒鈧綾ommand not found”. Also i was not succesful in adding svn location to my path. When i type svn help i can see it’s still the older version which is integrated in Mac OS. What do you mean with pico editor? It’s launched in terminal via 芒鈧緋ico filename”?lawless () said 970 Tage zuvor:
Still relevant after all this time. Was looking for the proper syntax for an svn export and happily stumbled across your post. Thanks!
John O () said 941 Tage zuvor:
Hi,
Just getting started with SVN and this tutorial looks just what I need. One question though: how would I set up a NAS to contain the repository rather than my local machine?
My NAS is raid-enabled so much safer for the core files.
Thanks
John
Mitch () said 934 Tage zuvor:
Hey John,
if your NAS is not able to run a svn-server itself, synchronizing via rsync should work.
Regardsart (www.google.com) said 921 Tage zuvor:
easy and concise read. a good refresher of Revision Management and intro to subversion. I am still dumbfounded about an overall revision on a set of files, a build revision ?
thanks .
Elaine Murphy (http://www.wandisco.com) said 919 Tage zuvor:
Latest MAC OS X Subversion 1.6.17 Binaries now available from WANdisco here: http://www.wandisco.com/subversion/download#osx
Robert () said 890 Tage zuvor:
Thank you! Nice tutorial
Tom (blog.thomasbendig.de) said 863 Tage zuvor:
very nice tutorial. Thank you! i will try the SVN function within Textmate too :)
iOSFixboy (http://www.jeiboy.net/) said 836 Tage zuvor:
You rock dude, nice tutorial
Aadithya (www.akamai.com) said 803 Tage zuvor:
Just too brilliant!! Thanks a lot for the tutorial!!
jose Iraheta (www.jnova.info) said 787 Tage zuvor:
Finding this kind of tutorials is rare. thank you so much for taking the time to write this with such detail and consideration, you have no idea how much you have helped me. once again, thank you!
Gary () said 782 Tage zuvor:
Fantastic Tutorial!! Thanks
All the GUI clients seem so expensive for a small time coder.
1 quick question, is there a quick way to add a complete project i.e. initial commit instead of adding individual files?
Thanks again,
GaryGary () said 782 Tage zuvor:
Sorry for my incompetence,
I thought the import statement was used for a single file. After reading through the tutorial again the penny dropped.
Once again thanks for an amazing tutorial.
Gary
code4jhon (none) said 750 Tage zuvor:
Really good. Thank yo very much for your contribution.
ejohnson () said 746 Tage zuvor:
This tutorial is a welcome change from the usual half-explanantions, unstated assumptions and missing caveats one normally encounters with any software download and implementation instructions. Thus, I turn to you for possible guidance. I am having one problem beyond the scope of the tutorial. I have Eclipse GUI downloaded and the Collabnet Subversion software. Everything checks out and they seem be aware of each other, but I can’t get Eclipse to work with the repository in the manner my instructions suggest. For example, it took me a lot of trial and error just to get the SVNrep to show up at all in Eclipse. I’m still not sure it is set up properly. One reason is that I can’t get it to access/checkout any files even though the terminal access indicates they have been imported.
Do you have any suggestions for decent instructions on setting up and working with Eclipse/Subclipse?
Christo () said 712 Tage zuvor:
Brilliant tutorial, thank you for that !
Now I have a question regarding your example.Assume I have this test folder that I imported into the repository. And this test copy that I checked out immediately after to work on it on my local machine.
I would like to save this test copy as a snapshot (maybe with different features than the original test ) and under a different name on the repository so that John or Jane can look at it and give me their opinion. Can I Just use an “import” on my test copy to incorporate it on the repository ? Every commit will be only related to that copy or will also affect the original test ?
How should I do that?
Thank you !Nirbhay () said 680 Tage zuvor:
Great tutorial, very helpful.
Ayesha () said 674 Tage zuvor:
Thanks for these nice and simple instructions. I was trying to use Versions for Mac but I did not find it very user friendly. Command line instructions for me for now.
Malay () said 645 Tage zuvor:
First of all thanks for the nice tutorial.
My problem is I am able to create a repository from terminal. When I try to import project from SVN in SVN at that time it gives an error “Unable to open ra_local session URL”. What to do now?
Any help would greatly appreciated.
Thanks in advance.
:MalayDaniel () said 631 Tage zuvor:
I came across this post while trying to find a quick start guide for Subversion for my Mac. I have to say, this is a shining example of what a straightforward and clearly written tutorial should be like! Thank you for writing it!
vks () said 614 Tage zuvor:
Very helpful !!
Ira (http://google.com) said 582 Tage zuvor:
I Fully understand what your position in this matter is. Even if I may disagree on some of the finer aspects, I think that you did fantastic job outlining it. Without a doubt beats the need to study it on my own. Cheers. dd1
Ivan () said 562 Tage zuvor:
This was incredibly helpful. Thank you.
Derak () said 403 Tage zuvor:
There is no need to install subversion from other sources. Xcode already includes it.
/Applications/Xcode.app/Contents/Developer/usr/bin/svn
Add it to you local bin directory and it should work just like described above.sudo ln -s -v /Applications/Xcode.app/Contents/Developer/usr/bin/svn /usr/local/bin/svn
Peter () said 298 Tage zuvor:
The tutorial indeed looks very nice.
However, I’m stuck already at the beginning before managing to install Subversion from CollabNet.After downloading the package and accepting the licence agreement, the installation tool doesn’t allow me to select the destination account where to install the software (the “continue” button remains grey).
Any solutions?
Comments are closed.
© 2006-2014 Imagine Ecommerce
Electronic Mail is available.
Mac 操作系统安装 SVN server教程(Subversion With Mac OS X Tutorial)的更多相关文章
- centos 6.8操作系统安装arcgis server 10.4
1.检查操作系统中软件包的安装,第一条和第二条是图形界面工具,可以不装. 可以用rpm -qa | grep 软件名 命令检查软件包是否已经安装 主机名不能包含下划线,可以用hostname检查主 ...
- centos 6.8操作系统安装arcgis server 10.4-后续篇
./Setup //执行安装 (运行安装脚本后会进行安装环境检测,会检查检查软件包和主机名,检测通过才可以开始安装.)如果检查不通过,会提示和报错,并中断安装过程.(1) 解决 hostname 问题 ...
- Mac OSX操作系统安装和配置Zend Server 6教程(1)
作为web开发人员,应该熟悉掌握各种系统下安装和配置web服务器与站点的技术. 随着越来越多的开发人员选择Zend Server服务器,慧都推出了在Mac OSX系统安装和配置Zend Server ...
- Ubuntu操作系统安装使用教程 (转)
随着微软的步步紧逼,包括早先的Windows黑屏计划.实施,逮捕番茄花园作者并判刑,种种迹象表明,中国用户免费使用盗版Windows的日子将不会太长久了,那么这个世界上有没有即免费又易用的操作系统呢? ...
- Mac os x 10.8 svn server的搭建
Mac自带了svn服务端和客户端,所以我们不用再去下载了. 1 但首先 sudo vi /etc/paths 将xcode里的Contents/developer/usr/bin加入到path ...
- Mac下的SVN客户端工具Cornerstone使用教程
前面几篇文章我介绍SVN服务器的安装,配置,实战.当然其中也加入了一些客户端测试的命令,使用命令当然是一个非常好的选择,但是对我们人类来说还是喜欢图形化界面的操作的.因此本文将介绍我喜欢的一款SVN客 ...
- CentOS7 基于 subversion 配置 SVN server
由于 Window Server 环境下,VisualSVN Server Community 版本只支持 15 个同时在线用户,所以彻底放弃 Windows Server,在 Linux Serve ...
- 解决 Mac webstrom Mac bigsur 中 Can‘t use Subversion command line client:svn
解决 Mac webstrom Can't use Subversion command line client: svn The path to the Subversion executable ...
- [转载]SVN使用教程
SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么? ...
随机推荐
- js-html音乐播放
<img src="images/music.png" id="music" class="rotate"> <audio ...
- Java 基础【02】 Super 用法
路漫漫其修远兮,吾将上下而求索.——屈原<离骚> 昨天写this用法总结的时候,突然产生了一个问题,请教别人之后,有了自己的一点认识.还是把它写下来,为大家更好的认识提供一点思路. 1)有 ...
- 关于udo3d双目相机的嵌入式板子系统重装
遇到的问题: 1.下载压缩文件(.rar):在linux下下载一会就会停止 原因:linux下不支持.rar文件的下载,在windows下载即可 2.在windows下解压文件,结果为镜像文件(.im ...
- spring lifeCycle
Lifecycle接口定义了每个对象的生命周期.如下 public interface Lifecycle { void start(); void stop(); boolean isRunning ...
- Flex 布局教程学习
转载自:阮一峰的网络日志(http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html) 网页布局(layout)是 CSS 的一个重点应用. 布局 ...
- GDKOI賽前總結
@(賽前總結)[GDKOI2017] 提一些比賽時要注意的事項: 賽前先把讀入優化/輸出優化的模板調試好, 加入缺省源中. 注意不要出錯, 輸出為0或者負數的情況要特盤; 讀入輸出文件名不要搞錯; 由 ...
- Excel文件处理Demo
1.BLL业务逻辑代码 /// <summary> /// 处理“店铺竞品销售数据”导入文件 /// </summary> /// <param name="f ...
- Android(java方法)上实现mp4的分割和拼接 (一)
最近正在处理android上的mp4切割问题.学习了很多mp4的知识,mp4文件按照编码类型,分为mpeg-4,avc这两种:这两种类型的mp4在后面的处理中会有不同的地方. 在Android系 ...
- 邁向IT專家成功之路的三十則鐵律 鐵律六:求全求盈之道-佈施
如果您只是在IT方面的專業技術與經驗相當高超,而不懂得在日常生活之中當一位俠義肝膽之人,來隨時隨地伸手幫助身旁需要幫助的人,那麼您只能算是一位有勇有謀但卻無智慧的匹夫罷了.既是匹夫那麼即便成功也會是短 ...
- MYSQL查询的四种情况
1 普通连接查询 select 表1字段1,表2字段2,from 表1,表2,where 表1.字段1==表2.字段2 2 inner join查询 select 表1字段1 ,表2字段2,from ...