HTML TemplatesFlash TemplatesWordPress ThemesDrupal Themese107 ThemesFree Joomla TemplatesXOOPS ThemesphpBB StylesFree SMF ThemesMagento ThemesOpenCart ThemesosCommerce TemplatesPrestaShop TemplatesVirtueMart TemplatesZen Cart TemplatesTumblr Themes
Website Templates | Coupons | Blog | News | Reviews | Tutorials | Login

Quickstart Guide for CVS and Contributing Drupal Themes

Drupal 5.0 has been officially released and it is time to start contributing some themes :) This article was written to provide an essentialized walk-through focusing on the actual process involved when submitting themes to Drupal.org. This is by no means a detailed guide and I am not a CVS expert. After spending days combing through the Drupal Handbook to piece it all together, I decided this would be useful as a reference.

It is highly recommended that you read the detailed CVS instructions in the Drupal Handbook at some point. This guide is for Windows users and a CVS client is used, so you don't have to use command-line. There are decent instructions already available for Linux users.

The assumption is that a stable release will be submitted, meaning that the theme has been fine-tuned, the PHP code has been checked for security vulnerabilities, the XHMTL and CSS have been validated etc, and the theme is ready to share with the Drupal community. Let's get started...

Adding a theme to Drupal CVS

  1. First you will need to apply for a CVS account with Drupal.org.
  2. Once your account is approved you will be able to add projects. But first, you will want to upload your theme to the Drupal CVS server. There are several CVS GUI clients available. I chose to use TortoiseCVS per recommendation from a Drupal developer. TortoiseCVS can be downloaded here.
  3. After you have installed TortoiseCVS, browse to the folder that contains all of the files for your theme. The commands for TortoiseCVS are accessed via the context menu when you right-click on a folder.
  4. Right-click the folder for your theme. Select CVS > Make New Module.

    Make sure that Password server (:pserver:) is selected for Protocol:. For CVSROOT: copy and paste or type the following line, replacing "username" with the username for your CVS account with Drupal (note: username is case-sensitive).

    :pserver:username@cvs.drupal.org:/cvs/drupal-contrib

    For the Module: field, copy and paste or type in the following line replacing "themename" with the name of your theme. This should match the name of the folder which contains your theme files:

    contributions/themes/themename

    Press OK. TortoiseCVS will do it's thing and should report that the operation was successful. This has created a directory in Drupal CVS to contain the files for your theme. You can verify that the directory was created by visiting the Index of contributions.

  5. Now the folder for your theme will have a green checkmark on it. The next thing to do is create a CVS branch. Right-click the folder and select CVS > Branch. Depending on which version of Drupal you are releasing the theme for, you will want to use one of the following branches for New branch name:

    DRUPAL-5 DRUPAL-4-7

  6. Next you will want to create a CVS tag for the specific version of the theme you are releasing. This helps to keep track of different releases. Since this is the initial stable release you will start with 1.0. Use one of the following tags below depending on the version of Drupal:

    DRUPAL-5--1-0 DRUPAL-4-7--1-0

    When this is complete, the theme has been registered on Drupal CVS and the branch and tags have been designated.

  7. Time to add the files. Right-click on the theme folder again and select CVS Add Contents. All of the files in your theme folder will be selected automatically. Press OK.
  8. Nowthefiles have to be commited. Open the folder for your theme. You will see orange plus signs on all of the files indicating that they have been added. Select these files, right-click and choose CVS Commit. In the Comment field, add something like "Initial Release for Drupal 5.0" and press OK. If your theme folder contains sub-folders i.e. "/images" etc. you will need to repeat this procedure for all of the files in each sub-folder since the commit command is not recursive.
  9. It is now time to add your project on Drupal.org. Login to your account. Click on Create content > Project. Most of the fields on the Submit project form should be self-explanatory. The Short project name should match the name of the folder that contains your theme files. For CVS tree, use the following URL and replace "themename" with the short project name you entered earlier:

    http://cvs.drupal.org/viewcvs/drupal/contributions/themes/themename

    After everything applicable has been filled in, click Submit.

  10. Now to add the release that was uploaded to CVS earlier. Click Add new release for your project. Select the appropriate CVS identifier. The next screen is fairly self-explanatory. Click Submit.

That's it! Whew! Now your theme is officially managed through Drupal CVS and included as a project on Drupal.org. If you want to add a screenshot, first read the Theme screenshot guidelines. You will need to Submit an issue with the Drupal.org webmasters in order to have your screenshot added.

So there you have it. 10 "easy" steps to add your theme to Drupal. Perhaps not that easy, but it is to be expected that there will be some tedious procedures to deal with in order to keep the quality of contributions high while maintaining a community effort like Drupal. Hopefully, this has been informative and will save some time and headache for people who aren't familiar with CVS but would like to contribute a Drupal theme. Again, it is recommended that you read through the Drupal handbook so that you have a more complete understanding of CVS theory.

Now that the stable release for Drupal 5.0 is out, it would be great to see more people contributing themes.

Comments

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <p>,<br>
CAPTCHA
R U Human?
Fill in the blank.
About | Contact | FAQ | Privacy Policy | Terms of Use

© 2006-2019 ├╝berbytes LLC