Posts Tagged ‘Subversion’

WebSight Design in Development

Thursday, March 11th, 2010

The beauty of WebSight Design lies in our full range of web services.  From design to development, SEO, hosting, and IT support, we have an excellent 15-year track record of providing our clients with the best possible products and services.

Over the years, we have built our own PHP development environment, based on the open-source Zend framework. We have a strong belief in the Model-View-Controller (MVC) architecture, and strict version control with Subversion (SVN), because the results are cleaner, more efficient code. Utilizing the Zend framework also gives us access to the large and expanding library for Rapid Application Development (RAD), while still having the flexibility to customize the framework and make it our own.

Using the MVC design pattern allows us to have a clear separation of business logic and presentation logic.  This presents a distinct advantage when building web applications because it separates what the user sees from what goes on in the background.  This moves away from mixing data-layer code, such as database queries, in with your display code and allows us to create reusable modules, such as photo galleries and shopping carts, for significantly faster builds in large applications.

The MVC architecture also offers ease of maintenance, since each component (model, view and controller) is self contained, performing upgrades and changes, such as switching databases from Access to MySQL, become much less painful and cumbersome then in the past.

We make it a priority to stay on the frontline of the ever changing technology in the Web and Internet industry; currently, we are working on a 2.0 version of our framework that will use portions of Domain Driven Design (DDD) to create clean structure and more efficient code patterns.  One of the biggest changes on the way is a central code base with customizable modules.  With this 2.0 framework we will be able to increase our build time on large projects, and push upgrades to a central code base rather then individual applications.

But don’t think that since we developed our own PHP framework we are averse to working with other languages.  Just send your application our way and we are happy to roll up our sleeves, jump into your Ruby/Flash/ASP project and get our hands dirty.

————————————————————————————————————–

Founded in 1995, WebSight Design offers business clients a range of website design and development services, including website programming, website hosting, website marketing, and colocation management.

Compile / Configure Subversion w/SSL Enabled

Friday, February 15th, 2008

My company: WebSight Design, uses Subversion for source and version control for all of our web development projects. We also use the amazing hosted Subversion service: Springloops. (If you ever need a Subversion deployment tool, Springloops is it!) Springloops repositories are *only* accessible via HTTPS. In order to gain access to a repository from the command line, I had to re-configure Subversion on our servers to enable access to ssl urls. Seems simple enough and actually it is. However, as with all things Linux, the devil is in the details. I spent hours-upon-hours trying to get it to work. It simply comes down to the sequence of steps you take. What I’ve done here is list out all of the steps done to get it working to save you from the same pain I went through.

So, I am assuming that you are trying to access a Subversion repository via an https url and you are getting the message “ssl not supported” or something similar to this. I know, it sucks and it’s pretty frustrating. I promise you however, if you do *exactly* what I spell out below, in the sequence I list… you will be up and working in about 15-20mins. The only other assumption here is that you are using Ubuntu or some other Debian-based Linux distro that supports the APT package manager.

It’s important to know that Subversion uses a module called Neon to provide ssl connectivity. The key here is to use the version of Neon for your specific release of Subversion. This is key to everything else that follows. Don’t just grab the latest versions of Subversion and Neon and assume they will work correctly together. So with that… let’s get to work.

First, make sure the following packages are installed on your server:
GCC

sudo apt-get install build-essential

Expat

sudo apt-get install expat

Libxml-dev

sudo apt-get install libxml2-dev

Next, download latest Subversion files:

wget http://subversion.tigris.org/downloads/subversion-1.4.X.tar.bz2
wget http://subversion.tigris.org/downloads/subversion-deps-1.4.X.tar.bz2

NOTE: “X” above is a placeholder for your version no.

Untar em’ in this order:

tar xjvf subversion-1.4.X.tar.bz2
tar xjvf subversion-deps-1.4.X.tar.bz2

Once you have extracted the files, open the file ”

subversion-1.4.X/INSTALL

“. Locate the section on Neon. It will state which version you need to download and compile with this version of Subversion.

Make sure you are *not* in the Subversion directory you just created. Then go ahead and download Neon:

wget http://www.webdav.org/neon/neon-0.2X.0.tar.gz

NOTE: The “X” above is placeholder for the version of Neon you need.

Next, extract the archive:

tar zxvf neon-1.X.X.tar.gz
cd neon-1.X.X

Now is where the fun begins. You need to compile and install Neon. Do the following from *within* the Neon directory you created:

./configure --with-ssl
make
sudo make install

It’s important to note that Neon gets installed to /usr/local by default. You need to note that as you will now need it when compiling and installing Subversion.

Change back to the Subversion folder:

cd ../subversion-1.4.X

Compile and install Subversion:

./configure --enable-ssl --with-neon=/usr/local/
make
sudo make install

Now, realize that the Subversion compilation and installation process takes a long time to complete. So just be patient. You can ignore any warning messages that scroll by. You only need to be concerned with error messages or if the installation stops for any reason.

Once compilation and installation are complete you need to confirm that you are running the version of Subversion you just tried to install:

svn --version --quiet

If you get *anything* other than the version number you thought you installed, something went horribly wrong. Go back to the very beginning of this and try again. Most time folks get errors it is because that don’t have the prerequisite tools and utilities installed. If you see the version you wanted… you’re all good!