SVN for PowerBuilder 8.x, 9.x, 10.x and upper
(2008-12-27 00:49)
分类: PB
New: support of the SVN version 1.4.x
How to install it?
You have to install the following software on client computer:- TortoiseSVN (visual SVN interface for windows)
- Subversion (console SVN applications)
- PbSccProxy (ver 2008-06-22) (svn.exe NOT included)
or Previous version of PbSccProxy (ver 2007-06-04)
The SccProxy prompts to be installed into the same directory as TortoiseSVN .
What's new?
- 2008-06-22 Removed conflict between several PB instances while opening pipe to svn
Removed a bug when PB hangs while executing svn. - 2007-06-04 Just set flag noDDB=1 in installation by default
- 2007-05-31 Changed LANG variable to LC_MESSAGES to avoid conflict with Sybase client.
- 2007-03-20 On initialization, set the LANG local environment variable to "en_US" to support localized svn version (normally, after that SVN speaking english in the session of PBSCC).
- 2007-02-17 Support of the SVN version 1.4.x.
New registry key "checkout.lock". If set to 1 then the object will be locked in addition to the property lock method. - 2006-12-03 New: one operation for several objects and additional error logging.
- 2006-04-26 you can specify svn work directory through registry ( ".svn" or "_svn" ).
- 2006-04-06 corrected a bug with TEMP environment variable. Great thanks to Stephan Glehn. Shame on me.
- 2006-03-23 _popen function not used any more because it could work incorrectly in non console applications.
- 2005-12-03 Removed double comment request. Commit error log is redirected to PB.
- 2005-05-17 Added information about conflict during svn update.
- 2005-05-16 PBSCC Proxy published.
PBSCC + TortoiseSVN Quick start reference.
How to start subversion service under windows XP
Svn work directory:
If you are using a special version of SVN with work directory named "_svn" instead of ".svn"then you must do the following modification of registry:

Configuration of PB:

The field User ID helps to determine current user. This value used nowhere in process except to check if object was checked out by you or by another user. So you can change this value to edit object checked out by another user.
The Project field should contain the folder where you have made "SVN Check Out" operation:

Local Root Directory is a folder of your PB workspace.
As you can see my project contains two subfolders. You must manually create all subfolders of your project in SVN (if you have some).
The Project folder must be always in status normal
Known problems:
- To work with console applications (svn.exe) and to avoid console blinking, proxy creates console on library initialization. Sometimes (I don't know why) you could see it, but it quickly disappears.
- Today proxy has a simple parser of ".svn\entries" file. And if tomorrow format will be changed then proxy will not work.
How it works:
Today SVN supports native object locking, but this information is stored on server only and not cached in local copy.
That's why I'm emulating locking using SVN properties feature. Properties are cached in the local copy

This means that testscc.pbt is locked by the user dmluinfo2id.
To increase speed, SCC Proxy creates cache folder in the svn work directory:


Each file contains just two lines: revision number and value of lockby property.

If you have any problems:
Please inform me at dlukyanov@ukr.net.To enable debug logging, please spesify a full path in the registry:

All svn commands will be logged into this file.
So you can repeat them from the command shell and see where the problem appears.
Also the file "%TEMP%\pbscc.err" created during "svn update" command.
You can check it to see if you have some specific problems.


