Installing Git on Plesk

Monday, 21st July, 2014

We've been putting up with using FTP to deploy sites for too long! Dan explains how we've recently moved all our sites to Git to improve our workflow.

Fork commits - git symbolic diagram

We've been putting up with using FTP to deploy sites for too long, the main problems with operating in this way are:

  • Difficult for more than one user to work on a project at once and deploy independently.

  • There is no audit trail for work completed or deployment history.

  • Downloading a full site from ftp takes longer than cloning a git repo.

  • No visibility of what state the code base is currently in.

Most of our sites are now in Git repositories and this is something we have made a priority. To confirm our workflow the Development team sat down with a pen and paper and walked through a site build from start to finish. Although it took some time it was worth it, as we now have a workflow we're all comfortable with and one that can be fine tuned as we go. More importantly this workflow can be explained to others in the future whether that be contractors or new members of staff that come on board.

We also agreed that when changes were required to any of our existing sites no matter how small we would take the time to move them into git.

Installing Git on Centos

Currently we’re still using a Centos server running Plesk for most of our sites so I had to install git on this server first.

$ yum-install git

If that fails you need to download and add the repo to yum

$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

$ rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

$ rpm -K rpmforge-release-0.5.2-2.el5.rf.i386.rpm

$ rpm -i rpmforge-release-0.5.2-2.el5.rf.i386.rpm

$ yum install git

Our Strategy

At Curve we pride ourselves at providing usable websites that meet high level UX testing criteria. The aim of streamlining our devops process is so that we can spend less time troubleshooting servers and deployments that have gone wrong and spend more time focused on the creative side of the front end. The end goal being to have a workflow that is easy to use for all and takes little or no administration time which reduces the time taken to build and maintain sites in any format.

References:

https://gist.github.com/chappyhome/7593903

Category: Drupal Development Tags: deployment, Development, GIT, Workflow
Dan Harper
Digital Project Manager

Dan likes bikes and Drupal development.