* * *

Author Topic: VCS (Git, Subversion) IDE package  (Read 664 times)

CCRDude

  • Sr. Member
  • ****
  • Posts: 328
VCS (Git, Subversion) IDE package
« on: March 27, 2017, 09:50:10 am »
Hi,

I wanted to share an IDE plugin I wrote some months ago, and extended once or twice meanwhile, that helps me save a lot of time in my daily workflow.


LazVCSHelper is a simple wrapper for an existing TortoiseGit (and now TortoiseSVN) installation, allowing me to easily commit and push code changes, or revert files, by detecting a Tortoise installation and calling it's dialogs. It goes as far as automatically opening the commit dialog upon closing a project.

Credits go to the great Lazarus IDE and the great Tortoise tools, this is really just a time-saving wrapper as you can see by the few code lines :) Comments about missing Git features or about bugs welcome of course :)

minesadorada

  • Hero Member
  • *****
  • Posts: 540
  • Retired
Re: VCS (Git, Subversion) IDE package
« Reply #1 on: March 27, 2017, 11:45:17 am »
Laz 1.7 54476M /fpc3.11 on Win v10 x64

Works great - thanks!
GPL Apps: Health MonitorRetro Ski Run
OnlinePackageManager Components: LazAutoUpdate, LongTimer, PoweredBy, ScrollText, PlaySound, CryptINI

BBasile

  • Sr. Member
  • ****
  • Posts: 283
Re: VCS (Git, Subversion) IDE package
« Reply #2 on: March 27, 2017, 12:19:03 pm »
Currently I use an IDE tool to launch git gui. One important concept of git is the staging area which should be used to add or not modifications and not only a full file (you can select blocks of lines or single lines among the modifs). Seems quite useless without an UI for this phase.

A while back I've translated libgit2 bindings (planned to use them in Coedit) but never done anything. If anyone wants to write a better tool I still have it (it was based on GitForDelphi).

CCRDude

  • Sr. Member
  • ****
  • Posts: 328
Re: VCS (Git, Subversion) IDE package
« Reply #3 on: March 27, 2017, 12:56:38 pm »
File-based TortoiseGit supports this, by simply allowing to untick files in the commit dialog to exclude them from the commit.

I haven't yet used (nor known about to be honest) about selected-lines-only commits. I guess that depends on how granular you work. For me, I would avoid the risk to commit incomplete stuff or break things when manually selecting lines.

TortoiseGit support the staging area, so I wouldn't call this useless. It seems it does not support line-based commits, and if you depend on that, I have to admit it would be useless to you :)

BBasile

  • Sr. Member
  • ****
  • Posts: 283
Re: VCS (Git, Subversion) IDE package
« Reply #4 on: March 27, 2017, 01:17:59 pm »
To test in git gui just right click in the diff there's "index lines", "index section". It allows, let's say, to program during several hours. After the session you decide what's ready or not and what has to go together or not (very useful the day a regression happens, it's important not to blend things in order to bisect and find easily the culprit).

 

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus