[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Feature request: tsvn: url enhancement

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Wed, 10 Sep 2008 17:54:07 +0200

Kevin Radke wrote:
> On Wed, Sep 10, 2008 at 12:13 AM, Stefan Küng <tortoisesvn_at_gmail.com> wrote:
>> Kevin Radke wrote:
>>> Peter McNab wrote:
>>>> Kevin Radke wrote:
>>>>> Stefan Küng wrote:
>>>>>> the-moog wrote:
>>>>>>> I have been tasked with migrating/interoperating from MKS to SVN, this
>>>>>>> process will take some time, even years.
>>>>>>>
>>>>>>> There is no way to integrate both applications fully, so one way round
>>>>>>> it is to invent SVNLinks (see my other post)
>>>>>>>
>>>>>>> I have written a rather complicated batch file that allows a link to
>>>>>>> be placed, such that clicking the link checks out the contents of that
>>>>>>> link to the current folder.
>>>>>>> But at the moment, the tsvn: links check out only the HEAD. I have
>>>>>>> made the batch file understand a bookmark in the link file (a standard
>>>>>>> windows url file) but it would be nice if TSVN did this itself as it
>>>>>>> would be useful to others.
>>>>>>> e.g. Click this link to use TSVN to check out lastest stable version
>>>>>> Why don't you create a tag for the latest stable version?
>>>>>>
>>>>>>> 1: It returns 0 as an errorlevel, even when there is an error, it
>>>>>>> should return the same as svn
>>>>>> Sorry, TSVN is *not* a command line utility and can't return proper
>>>>>> return values.
>>>>> Values return from main() or the win32 API call ExitProcess() are
>>>>> returned correctly when a win32 GUI application is called from the
>>>>> command line. (Lower 8 bits is all that is used.) At the very
>>>>> least success/failure - 0/1 should be doable.
>>>> I can confirm making use of ExitProcess in a non "Console" app but
>>>> that was in a Delphi compiled app many years ago.
>>> To do it "right", in the TortoiseSVN sense, it would require 2 separate
>>> executables. Windows does have the annoying problem that a "GUI"
>>> app is launched asynchronously, and a "console" app will always
>>> flash a console box. To workaround this, one could make the
>>> current TortoiseProc.exe a console application, but actually
>>> launch it from explorer with a wrapper to suppress the console
>>> box. Or one would need to build a wrapper around TortoiseProc.exe
>>> to "do the right thing" and get synchronous behavior when launched
>>> from the command line.
>>>
>>> Both of these options are a little hacky, and I doubt the
>>> developers would really want to support them.
>>>
>>> I guess what would be coolest would be to create a project
>>> to include TortoiseSVN like prompt dialogs, but with the
>>> command line svn syntax. Sorta like a hybrid.
>>>
>>> If there was enough interest in others supporting a
>>> command line based TortoiseSVN.exe executable, would the
>>> devs be willing to include it with TortoiseSVN?
>> Before this goes any further:
>>
>> * I know that ExitProcess() also works for GUI apps, but I have no
>> intention to hack MFC just to properly return such a value (yes, I'd
>> have to hack MFC here or create some other very ugly hack, since TSVN is
>> dialog based, and a dialog must return FALSE so the message queue can
>> stop and the application exit).
>> * I also know that there is a way to get a console back, but that never
>> works fully (tried that with SubWCRev once: worked for the default
>> windows console, but no other console or some other scripting engines):
>> now there are two SubWCRev exes
>>
>> TSVN is a GUI app and not intended for scripting. The CL client should
>> be used for that: use the right tool for the right job.
>
> Let's not call it scripting, lets call it integrating with other GUI
> applications
> that can be configured to call other utilities to do CM operations. TSVN
> is PERFECT for doing this, and using something like the command line
> utils can cause headaches with forcing the user to enter authentication
> info in a console window, etc. People like GUIs, which is why I
> like TortoiseSVN so much. If the command line utils and
> TSVN could share more information this would be a moot point.
>
> I'm not recommending adding ugly unmaintainable hacks. I was
> merely asking if something creative and easily maintainable was created
> would the devs be interested...
>
> There are a number of documented and tested ways to set a process exit
> code with a MFC app. One quick example is here:
> http://groups.google.com/group/microsoft.public.vc.language/msg/60c356f351732e49
>
> I'll admit I haven't looked at the TSVN source (yet), but I'm sure this stuff
> is possible.

http://issues.tortoisesvn.net/index.php?do=details&task_id=426

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net

Received on 2008-09-10 17:54:37 CEST

This is an archived mail posted to the TortoiseSVN Dev mailing list.