Jump to content

Versioning made easy With TortoiseSVN and AutoIt3Wrapper


Jos
 Share

Recommended Posts

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

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

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_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: 22/04/2018

Link to comment
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 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
Share on other sites

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

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_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: 22/04/2018

Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
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.
Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
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.... :)

Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
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...

Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Moderators

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

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see 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

 

Link to comment
Share on other sites

  • Developers

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

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Moderators

Jos,

Works fine. :thumbsup:

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see 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

 

Link to comment
Share on other sites

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 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
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.

Link to comment
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

Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...