klessm1 Posted February 2, 2011 Report Share Posted February 2, 2011 Name: LVMergeHG Submitter: klessm1 Submitted: 02 Feb 2011 File Updated: 03 Feb 2011 Category: *Uncertified* LabVIEW Version: 2010 License Type: BSD (Most common) Copyright © 2011, G System Solutions LLC All rights reserved Author: Michael Klessens Contact Information: PM on LAVA Issue Reporting or Feature Requests: http://gsystemsolutions.fogbugz.com Report under LVMergeHG project Note: Due to the nature of this package it does not contain source code (it will not run as source code). For those interested in obtaining the source code for their own builds please contact me via PM and I will point you to the location of a public mercurial repository. Description: LVMergeHG will enable users to perform multiple file merges with Mercurial either directly or through a client like TortoiseHG. It is configured as an external merge program for LabVIEW files that can be merged with LabVIEW's built in merge tool (LVMerge). Features: 1. Mercurial waits for an external merge program to exit before it will continue to the next merge item. LVMerge exits and launches a separate merge utility before a merge is completed. LVMergeHG acts as a buffer between Mercurial and LVMerge and waits until the LabVIEW merge is complete before it closes. 2. Mercurial downloads merge files in directories other then the target directory. LVMergeHG moves the temporary files into the target directory and removes them when finished. Note: This feature may not be needed if separating compiled code from source in LabVIEW. 3. LVMerge does not handle a two way merge automatically. LVMergeHG asks the user to pick which version (mine or theirs) to use as a base version and uses the selected items when calling LVMerge. 4. LVMerge does not auto select the version of LabVIEW to use for merging the vi's selected. LVMergeHG tells LVMerge which version to use based on the version used to last save the vi. If the exact version is not found LVMergeHG will find the next highest version of LabVIEW to use. ***See caveat 4 below. Requirements: 1. LVMergeHG uses LVMerge so a LabVIEW license that supports LVMerge is required (LabVIEW Professional Development System and above). Recommendations: 1. Install Mercurial first. LVMerge installation will try to configure LVMergeHG's settings on installation, but it can be reconfigured at any time using ConfigureLVMergeHG. 2. Set VI settings to remove compiled code from source. LabVIEW won't require sub vi's to be present at the time of merging when this is set (no search windows). Caveats: 1. LVMergeHG does not override some of Mercurial's automatic merge decisions. For example: You have a vi in one branch that hasn't changed since the base and you deleted it in another branch. You merge the two branches and Mercurial will assume you want to delete the file without asking because that is the only change. LVMergeHG sets the premerge configuration to false, although this doesn't seem to effect this merge decision. Solution is still in development. 2. LVMergeHG is only supported on Windows Operating systems (XP, VISTA, Windows7). 3. LVMergeHG has only been tested with LV2010 although it will most likely work in other versions. 4. LVMergeHG tries to set the version of LabVIEW that LVMerge will use based on the version read from the vi. However if two versions of LabVIEW are open LVMerge doesn't seem to load the compare in the correct version. It is safest to only have the version of LabVIEW open that you want to use or not have any version of LabVIEW open. Click here to download this file 1 Quote Link to comment
ShaunR Posted February 3, 2011 Report Share Posted February 3, 2011 You do realise that, in it's current format, this can never be certified Incomplete or secure code will not be accepted: including code with locked diagrams, missing diagrams or password protection. I would suggest at least putting a warning in the description that the package does not contain any accessible source code as this is unusual for LAVA. Quote Link to comment
klessm1 Posted February 3, 2011 Author Report Share Posted February 3, 2011 You are correct as it is not really "code" it is an application. The code will not work unless it is compiled into an EXE (mercurial cannot call a vi directly). It cannot be run as source nor is it useful to call it as source from another application (not an API). Thought I would make it easy on users by not requiring them to download and compile the tool in order to use it. I for one dislike downloading free applications from the web that do not have a compiled application packaged in an install.For those looking to make updates to the source code and performing their own builds, they can contact me via PM and I can send them a link to a public mercurial repository that they can pull down. I will put a warning in the description. 1 Quote Link to comment
klessm1 Posted March 7, 2013 Author Report Share Posted March 7, 2013 I have stopped using this tool because the latest version of tortoiseHG will now go through all the files first and then give a list of conflicts. It also allows you to select local or theirs and can use a merge tool of your choice on individual files (in the case of VI's just use lvmerge directly). Quote Link to comment
dannyt Posted March 8, 2013 Report Share Posted March 8, 2013 Thank you for the update, I had better download the new version and take a look, I am running quite an old one and had forgotten to keep and eye on changes Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.