GetSimple Support Forum
phpEasyVCS - simple version control, pure PHP, no database, WebDAV - Printable Version

+- GetSimple Support Forum (http://get-simple.info/forums)
+-- Forum: GetSimple (http://get-simple.info/forums/forumdisplay.php?fid=3)
+--- Forum: Off Topic (http://get-simple.info/forums/forumdisplay.php?fid=12)
+--- Thread: phpEasyVCS - simple version control, pure PHP, no database, WebDAV (/showthread.php?tid=2440)



phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2011-11-28

For those of you who
  • want to backup their files to your webspace instead of Dropbox & Co and
  • want to keep older version of these files without effort, or
  • need a simple version control system - e.g. for their GetSimple plugins ;-) -
  • want to easily access their files and older versions by a file browser like Explorer
  • don't have or want a database on their webspace
you might want to try phpEasyVCS, the only version control system (VCS)
  • implemented in pure PHP,
  • storing data in the file system and needing no database, and
  • offering access by web and WebDAV.

I've implemented this VCS in the last week and hope that some of you might find it useful.

Questions and Bugs: https://sourceforge.net/projects/phpeasyvcs/.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - ccagle8 - 2011-11-28

looks useful... i will add this to my list of scripts to try out eventually. thanks!


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-01-11

phpEasyVCS version 0.9.4 is now available!


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - ccagle8 - 2012-01-11

is this your project mvlcek?


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-01-11

ccagle8 Wrote:is this your project mvlcek?

Yes. I wanted to have a "GetSimple" VCS - pure PHP without database (but with simple WebDAV access).


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mikeh - 2012-01-12

This is awesome! Thank you, I have been looking for something like this for quite some time.
I tested it out and it works flawlessly so far.

One suggestion would be to allow for more advanced versioning for files. Maybe allowing the version to be changed to a custom value upon upload.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-01-19

mikeh Wrote:One suggestion would be to allow for more advanced versioning for files. Maybe allowing the version to be changed to a custom value upon upload.

Why would you want to do this?
To view past versions or the whole repository, you just create a tag for the date/time - or enter the date/time directly in the URL.

It would be possible to add a global revision number, which is incremented for each change, to a file version.
But the individual file's version number is an integral part of the functionality: show the number of versions, sort them, etc.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mikeh - 2012-01-20

mvlcek Wrote:
mikeh Wrote:One suggestion would be to allow for more advanced versioning for files. Maybe allowing the version to be changed to a custom value upon upload.

Why would you want to do this?
To view past versions or the whole repository, you just create a tag for the date/time - or enter the date/time directly in the URL.

It would be possible to add a global revision number, which is incremented for each change, to a file version.
But the individual file's version number is an integral part of the functionality: show the number of versions, sort them, etc.

You are correct, it is not needed.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mikeh - 2012-01-29

It would be great if it allowed you to view the files in the browser.
Or even better view the files and compare to past versions Smile


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-01-29

mikeh Wrote:It would be great if it allowed you to view the files in the browser.
Or even better view the files and compare to past versions Smile

Which version are you using? This is already included.
And let's move the feature discussion and bug reports to Sourceforge.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-08-05

I've released version 1.0 of phpEasyVCS:
  • now includes a user management and read-only access to the VCS
  • upload and download multiple files/directories at once (with Java applet or as zip with pure HTML)
  • delete, copy, move multiple files/directories with the web interface



phpEasyVCS - simple version control, pure PHP, no database, WebDAV - evan70 - 2012-08-05

Thank you, mr. Vlcek, I wanted to test it Wink


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - shawn_a - 2012-08-05

Very nice


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - sal - 2012-08-06

Very nice.

Am I correct in thinking you mount this with WebDAV and work out of there? The only problem I find with this process is the delay, sometimes several seconds, upon saving files. Is there a better way to work locally and lazily sync using phpEasyVCS, similar to how it works with Dropbox, etc.?


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2012-08-06

sal Wrote:Very nice.

Am I correct in thinking you mount this with WebDAV and work out of there? The only problem I find with this process is the delay, sometimes several seconds, upon saving files. Is there a better way to work locally and lazily sync using phpEasyVCS, similar to how it works with Dropbox, etc.?

I'm using it like a version control system or as backup for small projects: copy everything from remote to local, work with it, copy it back - if the file was changed, phpEasyVCS will create a new version on the server, otherwise it doesn't change the server file.

You can use any synchronization tool supporting WebDAV to sync local and remote files. Or use a tool to mount the WebDAV as drive and use any synchronization tool.

I might create an Eclipse plugin (like the CVS or SVN plugins) to synchronize projects - have to check though how difficult this is.


phpEasyVCS - simple version control, pure PHP, no database, WebDAV - sal - 2012-08-06

I found DSynchronize (midway down the page), a freeware sync utility for Windows which has a real-time mode that seems to do the job. I now realise however you don't really need to sync on every save so the timed sync option that DSynchronize has may be more useful.


RE: phpEasyVCS - simple version control, pure PHP, no database, WebDAV - mvlcek - 2014-04-11

phpEasyVCS version 2.0:
  • features a synchronization view, where you see the differences between the remote VCS and your local working copy - you can view and merge files and specify what to do with each file.
  • Additionally it now includes a REST interface you can use from your own applications.
  • Multiple users, multiple repositories, and more...