Jump to content

IPB + Revision Control

Recommended Posts

Hi All -

I'm currently in the process of converting a large forum over to IPB, as well as a complete redevelopment of the main site. At this time, we're using git for pretty much everything, the current forums (SMF), the main site, git access, server configs, etc. You name and it is probably under revision control.

I have a few questions for those that might have their current system under a VCS, or have multiple developers working on the site/forums at once:
I think that is it for now. I guess I'm mainly just looking for an overview on how others have done it in the past. :)

[*]What files are under the VCS? Obviously cache files and settings files (a distribution version should be provided) shouldn't be under revision control, but what else technically should be? [*]How do you manage hooks / applications? Do you install them and leave the files under the VCS, or do you just leave this separately and have the developers install it locally? I guess this applies more to hooks than it does applications, or at least the files in the hooks directory. [*]How do you handle dev mode vs normal? We're likely going to be using something like Phing/Ant for re-building the development forums/site - so we can apply Database migrations & switch between dev -> normal pretty easily.

Link to comment
Share on other sites

I don't know what the official policy is on VCS because technically you are distributing the board software which is against the license terms, so I doubt you'll get any official support on this. I suppose it's a bit of a grey area because it's not like you're distributing it for the other person to use as their forum software.

Link to comment
Share on other sites

I'm too lazy to read up terms and conditions to answer this, but I highly doubt IPB has problems with putting them on private VCS. As long as it is private, it doesn't come under distribution, but under storage. Anything detrimental to the community development is also highly detrimental to the growth of IPB itself.

To the original post, I don't quite get what's being asked here. The answer just seems like do it in a style that fits you and what you want.
And personally, I have a permanent dev server and production server. There's no switching around. That seems kind of unnecessary imo when you can technically have infinite (virtual) servers.

Link to comment
Share on other sites

RE: VCS against the terms... Yeah, I can see how this is technically against the terms as it does not specifically state within the license that distribution for private use:

You may not:


- distribute the Software

- distribute individual copies of files, libraries, or other programming material in the Software package

- distribute or modify proprietary graphics, HTML, or CSS packaged with the Software for use in Software applications other than Invision Power Board or web sites without written permission from IPS

- modify the software to function in more than instance or location (URL, domain, subdomain, etc.) from a single set of source program files unless each location is separately licensed

In any case, like Grumpy said, I don't think IPS should have a problem with this as it is a private repository w/ user access and very few developers have access to this specific repository. If IPS does have a problem with it, they can contact me and we can work something out.


Anyways, Grumpy, I could easily be over thinking things. I have a nasty habit of doing that, and in this case that is very possible. With most of the applications I've worked with on setting up on a VCS, they were not "installable" per say. They simply had a settings file that would have a distribution version (with dummy values) and then a git/svn ignore config for the actual file so nobody accidentally adds it to the repo.

The main thing I'm getting at here is I want to make sure that both the skins and any hooks we create have the sources within the repository. Not just the .xml of the hook/skin, but each PHP/HTML/CSS/JS/etc. file under version control. That's where I'm looking for the advice - of to install the board & place it in DEV mode and put all of that into the repository with the master folders (which as you know breaks out a lot of the stuff in the database into their own files) or do I just dump from the upload folder in the .zip and call it a day?

Does that make any more sense, or am I over thinking it? ;)
Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...