Sign in to follow this  
Followers 0
Jos

Versioning made easy With TortoiseSVN and AutoIt3Wrapper

51 posts in this topic

#1 ·  Posted (edited)

I've seen many questions around "how to do source versioning" and have tried to make it a little bit easier by incorporating SVN functionality into AutoIt3Wrapper.

Would appreciate getting some feedback on:

  • Is this working for you?
  • Are there issues with this?
  • Could it be improved?
I have uploaded a separate beta version of Autoit3Wrapper to the Beta dir which also contains the helpfile page on how to install TortoiseSVN and Winmerge and use versioning.

Download and install :

  • AutoIt3Wrapper.* to %programfiles%Autoit3SciTEAutoIt3Wrapper
  • *.properties to %programfiles%Autoit3SciTEproperties
cvsWrapper will be discontinued and isn't supported in this version any more. The internal functionality is exactly the same but now only supporting SVN.

Updates made:

3/24/2013
- Fixed AutoIt3Wrapper issue when UAC is enabled and AutoIt3Wrapper not running in Admin mode, which made it fail to update AutoIt3Wrapper.ini with the proper settings.
- Update the Documentation with instructions to select the installation of the Command Line tools for the TortoiseSVN installer and several suggestions from Melba23.

- Updated SciTEConfig to allow for the generic Tools command selection. This is stored in the regular beta directory.

Jos

Edited by Jos
1 person likes this

Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

I will be testing this at the weekend as I use TortoiseSVN.


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

I will have a look at it too and report the results!


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

svn.exe doesn't exist in my TortoiseSVN. From doing some research it appears TortoiseProc.exe is what you're looking for.

Good reference: http://stackoverflow.com/questions/2967176/where-is-svn-exe-in-my-machine

Edited by guinness

_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

svn.exe doesn't exist in my TortoiseSVN. From doing some research it appears TortoiseProc.exe is what you're looking for.

I am running the x64 version which does include the svn.exe in the BIN directory. Just looked at my x86 WinXP VM pc and it indeed seems the x86 version of tortoisesvn is missing the SVN.exe.

I am aware of the TortoiseProc.exe but had some issue with it in the past so also based the cvswrapper's SVN support on a separate SVN.exe setup.

Let me have a look to see what the best approach is for this omission in the x86 installer.

Jos

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Nice!

Being a Git man myself, I wrote an AutoIt script which:

  • Reads the Version number from the compiler settings, creates a new tag.
  • Adds all of the changes using git add .
  • Then prompts me for the changes I made and commits them using git commit -m $sCommitMsg
  • Pushes the changes to my private GitHub repositories so that I don't lose them.
Works a treat, I'll have to find it off of my backup if anybody is interested.

Share this post


Link to post
Share on other sites

#7 ·  Posted (edited)

Let me have a look to see what the best approach is for this omission in the x86 installer.

As it looks now, its best to simply download SilkSvn and use that svn.exe for the x86 OSes, as the TortoiseProc.exe doesn't really allow for batch processing.

Still need to do some testing to ensure all regex checks are correct in the AutoIt3Wrapper.ini.

Jos

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Works a treat, I'll have to find it off of my backup if anybody is interested.

Sounds great I'm torn between the 2...

Spoilt for choice is the main problem.... :)

Share this post


Link to post
Share on other sites

As it looks now, its best to simply download SilkSvn and use that svn.exe for the x86 OSes, as the TortoiseProc.exe doesn't really allow for batch processing.

Still need to do some testing to ensure all regex checks are correct in the AutoIt3Wrapper.ini.

Jos

This line in AutoIt3Wrapper.ini needs to be updated to support silksvn:

CommandAddSource_ok_txt=A.*?%sourcefileonly%

I have uploaded a updated version of Autoit3Wrapper to have it initialise like this, but you need to manually update in case you already ran it.

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Sounds great I'm torn between the 2...

Spoilt for choice is the main problem.... :)

I love Git, it's nonsensical at times, but out does SVN for me. Plus, I can have Git running without a Git server being in place.

Share this post


Link to post
Share on other sites

Plus, I can have Git running without a Git server being in place.

The whole purpose of this setup is to use a local Disk to store the SVN repository for your sourcefiles.

Let's keep this thread to it's purpose which is using the changed AutoIt3Wrapper for versioning. :)

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Let's keep this thread to it's purpose which is using the changed AutoIt3Wrapper for versioning. :)

Sorry Jos, my first post was related.

If anybody wants a version that does this in Git, ask I'll dig out the code.

Share this post


Link to post
Share on other sites

I have uploaded a separate beta version of Autoit3Wrapper to the Beta dir which also contains the helpfile page on how to install TortoiseSVN and Winmerge and use versioning.

I followed the help file closely..VERY helpfull!!! (few little things I'd suggest but only minor)

Everything went fine until I hit F12 & ALT-F12 and nothing happened. :(

What was supposed to happen? What was supposed to run?

I have the full version of SCITE and I'm running on Win7 64Bit.

As far as I know I've followed everything else to the letter and I do have version info in the repository and it's working from TortoiseSVN...

Share this post


Link to post
Share on other sites

Everything went fine until I hit F12 & ALT-F12 and nothing happened. :(

What was supposed to happen? What was supposed to run?

I have the full version of SCITE and I'm running on Win7 64Bit.

As far as I know I've followed everything else to the letter and I do have version info in the repository and it's working from TortoiseSVN...

Did you also copy the au3.properties version from the Beta?

It has these definitions for these shortcuts:

# 15 Update Source in Version repository
command.15.*=$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.exe /in "$(FilePath)" /Versioning_Commit
command.name.15.*=Version Update Source
command.save.before.15.*=1
command.shortcut.15.*=F12
# 16 Compare current Source with the source in the Version repository
command.16.*=$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.exe /in "$(FilePath)" /Versioning_ShowDiff
command.name.16.*=Version Diff Source
command.save.before.16.*=1
command.shortcut.16.*=Alt+F12

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#15 ·  Posted (edited)

Jos,

Everything working fine for me. Thanks for the help getting it all to work nicely on my machine and for the work you put in producing it all in the first place. :)

M23

Edited by Melba23
Typo

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

Updated SciTEConfig to allow for Selecting/Deselecting tools that are for all files ".*", not just AUtoIt3 ".$(au3)", like this versioning option.

Update available in the Beta directory.

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions  - Beta files                                How to post scriptsource        Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Jos,

Works fine. :thumbsup:

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#18 ·  Posted (edited)

Jos,

when I press F12 for the first time I get the message box "Versioning information is not found yet." When I then click on "Yes" I'm not prompted for the location of SVN.exe but get the following messages:

>C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe /in "C:\SVNTest\Trunc\AD\Test.au3" /Versioning_Commit
+>14:03:19 Starting AutoIt3Wrapper v.2.1.2.7 Environment(Language:0407 Keyboard:00000407 OS:WIN_7/Service Pack 1 CPU:X64 OS:X64)
!>14:03:22 Your versioning program isn't found:. Skipping task.
>Exit code: 0 Time: 3.763

I already had TortoiseSVN and WinMerge installed on my machine so maybe something is missing.

Anything I need to modify?

Thanks

Edited by water

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Did you also copy the au3.properties version from the Beta?

It has these definitions for these shortcuts:

# 15 Update Source in Version repository
command.15.*=$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.exe /in "$(FilePath)" /Versioning_Commit
command.name.15.*=Version Update Source
command.save.before.15.*=1
command.shortcut.15.*=F12
# 16 Compare current Source with the source in the Version repository
command.16.*=$(SciteDefaultHome)\AutoIt3Wrapper\AutoIt3Wrapper.exe /in "$(FilePath)" /Versioning_ShowDiff
command.name.16.*=Version Diff Source
command.save.before.16.*=1
command.shortcut.16.*=Alt+F12

Jos

I'll see about adding them to my au3.properties...

I'm glad I didn't overwrite it as there looks like quite a few differences.

Share this post


Link to post
Share on other sites

Working fine for me now.

I got the same prompt as Water but mine worked fine (no error prompt).

BTW you instructions seem to point to a "repository per project" structure. Is that correct?

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0