User tests: Successful: Unsuccessful:
Joomla is very unfriendly for versioning. New plugins are copied into the working tree as new files.
There is possibility to use unix feature: symlinks, and make possible to distinct the working trees for main joomla source code and plugins source code.
I.e:
$ find pwd
/plugins/system/admin8/ -ls
5292 4 drwxrwsr-x 2 www-data joomla 4096 paź 27 01:14 /home/dexter/src/joomla/joomla-cms/dex4er/plugins/system/admin8/
5293 0 lrwxrwxrwx 1 www-data joomla 55 paź 27 01:14 /home/dexter/src/joomla/joomla-cms/dex4er/plugins/system/admin8/admin8.php -> /home/dexter/src/joomla/joomla-plugin-admin8/admin8.php
5294 0 lrwxrwxrwx 1 www-data joomla 55 paź 27 01:14 /home/dexter/src/joomla/joomla-cms/dex4er/plugins/system/admin8/admin8.xml -> /home/dexter/src/joomla/joomla-plugin-admin8/admin8.xml
It means that there is a git repository in /home/dexter/src/joomla/joomla-cms/dex4er/ directory for joomla-cms
and repository in /home/dexter/src/joomla/joomla-plugin-admin8 for plugin. After modifications of plugin files I can trace them in proper repository.
This modification of joomla is not recommended for productional deployment but it is greatly helpful for development.
This looks very interesting.
However, I'm not 100% sure about the problem you are trying to solve.
What I do in my local dev environment, to support "versioning":
e.g.
/home/elkuku/server/htdocs/joomla-cms-master
⇒ /home/elkuku/repos/joomla-cms
|__ administrator/components/com_foo
⇒ /home/elkuku/repos/com_foo/admin
the same for site, media etc.
I mean, I create the symlinks "per hand" (actually using a script) and then I use Joomla!'s great "discover/install" feature. No need for J! to copy or symlink anything.
This way I can also test the same code only different installs.
Does that might solve your issue or is this not what you are trying to achieve ?
I think, however, that JFile::symlink()
would be a nice addition
I think my solution is very similar you yours. The main difference is that I use modified Joomla installer rather than separate tool, so it is slightly simpler IMO.
Status | New | ⇒ | Pending |
Build | ⇒ | , |
Thank you for your contribution, the Production Leadership Team has decided not to include your feature, therefore I am closing this request.
Status | Pending | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2015-03-30 16:37:21 |
Thanks for your contribution - At this time we are only using github as the place to submit code fixes, the actual reporting of issues and testing fixes is still taking place on Joomlacode.
Please can you:
1) Open an item on the Joomlacode tracker in the appropriate area.
CMS Bug Reports: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemBrowse&tracker_id=8103
CMS Feature Requests: http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemBrowse&tracker_id=8549
2) After submitting the item to the Joomlacode tracker, add a link to the Joomlacode tracker item here and make sure that you add a link to this GitHub issue or pull request on the joomlacode tracker item.