Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2008-11

SVN integration into Lazarus IDE (suggestions)

10 messages · 6 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

Before I flood Mantis with feature requests <wink>, I thought it might be worth to discuss some ideal here first and then only put the worth while features in Mantis. This will help guide Darius or whoever is working on the SVN integration.

Please note, I know the SVN integration is in it's early days. I have no issues there, on the contrary, I think what has been done so far is pretty impressive and already very useful.

Below are some ideas I have. I'm not sure if they already exist or are in the pipeline. I just thought I would mention them anyway. Please feel free to add or extend the list.

* http://bugs.freepascal.org/view.php?id=12585
This reduces screen clutter

* caching of information as it's being needed. Due to the limitation of SVN only storing the most recent revision information to generate diffs. As soon as you request differences between revisions of the same file, it takes 30-60 seconds depending on your internet connection. As soon as such differences get asked for, could those be cached so if it is requested again, all information in locally available. I think TortoiseSVN does this as well.

* history (revision) information per file. eg: the active file in the editor. So far I can only find revision information per project level, not file level.

* By default, filter the "commit screen" to only show 'modified' and 'unversioned' files in the grid. There is no need or point for the 'normal' files.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

dmitry boyarintsev
to Graeme Geldenhuys: Before I flood Mantis with feature requests <wink>, I thought it might be worth to…

Imho, it's better to make Generic Version Control integration plugin, rather than SVN plugin.

So actually ANY version control tool can be used with the same GUI (CVS, SVN, Git .. and others). All control tool provides common features, like: file comparing, commite/update/revert, add/remove files with version controlled project.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.lazarus.freepascal.org/pipermail/lazarus/attachments/20081107/4dc92a2b/attachment.html

Reply by email

Michael Van Canneyt
to dmitry boyarintsev: Imho, it's better to make Generic Version Control integration plugin, rather than SVN…
dmitry boyarintsev wrote 7 lines
Imho, it's better to make Generic Version Control integration plugin, rather than SVN plugin. So actually ANY version control tool can be used with the same GUI (CVS, SVN, Git .. and others). All control tool provides common features, like: file comparing, commite/update/revert, add/remove files with version controlled project.

I second this. Borland has (had) a special API in the IDE for this. Specifically, this would mean that lazarus provides an interface in ideintf, which is then implemented for various version control systems...

Michael.

Reply by email

Graeme Geldenhuys
to dmitry boyarintsev: Imho, it's better to make Generic Version Control integration plugin, rather than SVN…
dmitry boyarintsev wrote
Imho, it's better to make Generic Version Control integration plugin, rather than SVN plugin.

I'm not the one implementing the SVN plugin, I'm simply testing it and commenting. But you might have a point - though it will be a lot more effort I think. I guess one can look at the SCC API from Microsoft to get ideas for an API interface. Though I don't know much about the SCC API.

Not all source control software work the same though. Some require checkout/checkin, some don't. etc.. But that's for Darius to decide if he wants to go though the extra trouble - or leave it for somebody else to tackle.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Paul Ishenin
to Michael Van Canneyt: I second this. Borland has (had) a special API in the IDE for this. Specifically, this…
Michael Van Canneyt wrote
I second this. Borland has (had) a special API in the IDE for this. Specifically, this would mean that lazarus provides an interface in ideintf, which is then implemented for various version control systems...

Dont complicate already complicated task at the begining. Let's Darius implement svn plugin at first and then you will push him to make it more generic.

Best regards,
Paul Ishenin.

Reply by email

Michael Van Canneyt
to Paul Ishenin
Paul Ishenin wrote 10 lines
Michael Van Canneyt wrote: > I second this. Borland has (had) a special API in the IDE for this. > Specifically, this would mean that lazarus provides an interface > in ideintf, which is then implemented for various version control > systems... Dont complicate already complicated task at the begining. Let's Darius implement svn plugin at first and then you will push him to make it more generic.

Of course! I'm happy to see that there is a plugin at all :-) Since I use Subversion, the SVN plugin is a perfect start for me :-)

But not everyone uses SVN, so...

Michael.

Reply by email

Unknown author
to Michael Van Canneyt
Show quoted text 17 lines
On Fri, 7 Nov 2008, Paul Ishenin wrote: > Michael Van Canneyt wrote: > > > I second this. Borland has (had) a special API in the IDE for this. > > Specifically, this would mean that lazarus provides an interface > > in ideintf, which is then implemented for various version control > > systems... > > Dont complicate already complicated task at the begining. Let's Darius > implement svn plugin at first and then you will push him to make it more > generic. Of course! I'm happy to see that there is a plugin at all :-) Since I use Subversion, the SVN plugin is a perfect start for me :-) But not everyone uses SVN, so...

Creating a generic interface was the plan already from the beginning, but I only have limited time to work on this, and rather than trying to work out an API from the beginning I wanted to create something usable first and then see what functionality can be shared after. I welcome any ideas though on improving the SVN plugin as well as the IDE interface. Keep sending them patches :)

Darius

Reply by email

Graeme Geldenhuys
to Paul Ishenin: Dont complicate already complicated task at the begining. Let's Darius implement svn…
Paul Ishenin wrote
Dont complicate already complicated task at the begining. Let's Darius implement svn plugin at first and then you will push him to make it more generic.

This is my sentiment as well. Get one out there first?then generalise it if the demand is there. So far I'm enjoying the SVN plugin?mostly because I can now type my commit comments much easier and review diffs with less hassle before I commit. :-) Awesome work Darius!

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email