X-Cart: shopping cart software

X-Cart forums (https://forum.x-cart.com/index.php)
-   Changing design (https://forum.x-cart.com/forumdisplay.php?f=51)
-   -   Version control on a team project (https://forum.x-cart.com/showthread.php?t=22253)

zipzero 06-03-2006 01:34 PM

Version control on a team project
 
Hi everyone,

I am interested in ways to professionally reduce conflicts and file over-writing. Those who customize X-Cart as a team should have faced this challenge. Also, having different version with ability to rollback would have been great.

I see that when we are working on X-Cart templates, usually home.tpl, skin1.css gets affected by more than one programmer. On the other hand, when we modify functionality, the func.php, cart.php are generally the concern.

There should be professional ways to deal with this.

We use linux server but Windows XP workstations (use dreamweaver mx to edit and SSH to upload\download the file changes to server).

I have heard a CVS Server can be the solution. I also heard of tools like TortoiseCVS.

But, I am not clear if this is the right way. Please help.

balinor 06-04-2006 05:46 AM

How about the checkin/checkout feature of Dreamweaver?

geckoday 06-05-2006 05:08 AM

Don't go with a simple check-in/check-out system in a team world where a few files get updated a lot like you have described. Everyone will be waiting on each other to finish what they have done so they can work on that popular module. Or they'll work on a copy and wipe out someone elses changes. I've seen it happen over and over again in my 30 year IT career. You want a delta based version control system like CVS or Subversion.

I prefer Subversion over CVS. You'll see a lot of open source projects have moved to Subversion from CVS. Subversion is considered the redesigned CVS to make it more flexible. The Tortoise tools, TortoiseCVS or TortoiseSVN, are great windows add-ons to make using the version control systems much easier. There is a decent 3-way diff program built-in with TortoiseSVN for merging changes, but I use Kdiff3 because it highlights changes within a line, not just the lines that changed.

Even in a one person development environment I use Subversion/TortoiseSVN. Its great to be able to track back when a change was done and why. I also keep a pure X-Cart delivered code branch. When applying an upgrade I apply it to the pure X-Cart branch and then merge into my development branch. It makes it much easier to sort out changes than trying to figure out why patch failed.

One other thing I do is version control database configuration data. I dump the database with phpMyAdmin and split it up into one file per table. I then version control tables like xcart_config and xcart_languages that often have changes that go along with the code changes.

Whatever way you go, you need one person designated as your version control coordinator to setup the branch structure and to help the team keep things straight.

zipzero 06-06-2006 12:09 AM

Hi balinor and geckoday,
Thanks for your valuable comments.

hmmm.... I think geckoday may have a point there.
Is it really not possible to do simultaneous work on let's say func.php?
Or can it be solved by any extension of Dreamweaver or any other tricks?
What do you think balinor?
If it can be solved the dreamweaver, many may not want to go to subversion or CVS as it is a bit techy (or is it just my misconception??).

I think this could be a good topic to discuss for the X-Cart lovers and at the end of the day, come up with the most efficient solution.

Keep it alive guys :D


All times are GMT -8. The time now is 09:18 PM.

Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.