macOS Sierra: Configuring Subversion/SVN on Apache
Every Mac OSX/macOS update brings further challenges to get svn working after the update. Sierra's the latest.
I have a subversion repo in ~/svnRepo
I run some windows development stuff in a VM running on 172.16.99.4
which can connect to the Mac host using http://172.16.99.1
. I use Tortoise and Visual Studio.
Normally I build the SVN server on the Mac using the current method. Last time I 'brewed' my own.
Sierra has subversion
running, e.g. terminal> svnadmin info ~/svnRepo
returns info about the repository.
Questions:
Is it possible to use the native subversion server to serve up subversion to the VM?
Must another subversion server be installed and configured on Apache?
How can Sierra be configured to connect to my pre-existing repo?
Is there a quick and easy way doing this?
Solution 1:
Yes, you can run a native subversion server on your Mac to serve your virtual machines.
If your virtual machines can access services on your Mac, as your question suggests they can, then you can offer a subversion service natively on your Mac.
svnserve
The easiest approach is to use subversion's standalone server, svnserve
:
The svnserve program is a lightweight server, capable of speaking to clients over TCP/IP using a custom, stateful protocol. Clients contact an svnserve server by using URLs that begin with the
svn://
orsvn+ssh://
scheme. This section will explain the different ways of running svnserve, how clients authenticate themselves to the server, and how to configure appropriate access control to your repositories.
A copy of svnserve
is included with Xcode:
/Applications/Xcode.app/Contents/Developer/usr/bin/svnserve
svnserve
does not require an Apache httpd
instance or any other server to work. The svnserve
process listens and handles connections from svn
clients.
Security Considerations
You can add tunnelling over ssh
and other approaches to add security. Without additional configuration, a plain svnserve
instance is not recommended for exposure to the Internet; it is not secure by default.
However, for your local-only situation svnserve
is likely enough.