Externals User Interface

4 views
Skip to first unread message

Brian St Jacques

unread,
Apr 26, 2012, 1:52:22 PM4/26/12
to us...@tortoisesvn.tigris.org
Hello,

I was wondering if I can request improvements to the TortoiseSVN user interface, specifically for externals, and if this would be the appropriate place to make such a request? If not, I would appreciate anyone who could point me in the right direction.

Here is why I ask:

My work environment makes heavy use of externals, almost always at the file level. My core set of source code gets built on several different platforms, and also has many variant builds on each platform for specific purposes. Without getting in to a philosophical discussion of why this is or how it might be changed, I will just say that the externals property works well for my needs.

I would love to see the following additions:

Drag and Drop Support -
Actually setting up the externals for a project can be a little cumbersome, especially when I am pulling in 30 or so external files. Adding a context menu selection for externals when Right Dragging in the Repo Browser and/or the working copy would be HUGE for me, especially if it supported dragging and dropping a group of files.

Icon Overlays -
The Repo Browser overlays a little arrow to indicate the file is an external reference. However, the icon in the working copy is that of a normal versioned file. It would be nice if the working copy also indicated that the file pulled in with externals actually lives somewhere else.

Committing an External -
It is nice that you can modify and commit the external from the working copy. But this can get you in a little trouble if you have pegged the external to a specific revision. The commit of the external will update the versioned source as well the working copy, but if you do an update on the working copy you will go back to the pegged version. It would be great if the commit function could recognize when the action is taking place on an external, and maybe provide the option to update the pegged revision number of the externals property, or even an option to create a local versioned file and break the link to the external.

Externals Dialog -
1) A Browse button for the Local Path would be nice, with a way to create a folder if necessary. This dialog looks like it may have been set up before externals to individual files was allowed, so it took me a little while to figure out that if I wanted the external file to be placed in the the folder where the externals property is set, I need to put in a file name in the Local Path box.

2) It is nice that the URL entry has a browse button, but it can behave in different ways. If you have a Repository path in the URL box you will open up the Repo Browser to that location. If the URL box is empty, you will get a dialog for the local computer with no way to go through the Repo Browser.

3) It is not clear to me if you can do this or not, but most of the time I would like to pull the HEAD revision and peg the external to whatever that my be. A little "Peg to this revision" checkbox right next to the "HEAD revision" radio button would be a beautiful thing!

I realize these are open source tools and that (in theory, at least) it would be possible for me to tweak these things. But I'm sure it would be a million times faster and better if someone who was familiar with the project did the tweaking! And I would be more than willing to contribute to the party fund ;)

If you have made it this far and have advice for me to pursue my cause, please feel free contact me!

Brian
bjacques (at) shinpoly (dot) com

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2953125

To unsubscribe from this discussion, e-mail: [users-un...@tortoisesvn.tigris.org].

Stefan Küng

unread,
Apr 28, 2012, 3:57:38 AM4/28/12
to us...@tortoisesvn.tigris.org
On 26.04.2012 19:52, Brian St Jacques wrote:
> Hello,
>
> I was wondering if I can request improvements to the TortoiseSVN user
> interface, specifically for externals, and if this would be the
> appropriate place to make such a request? If not, I would appreciate
> anyone who could point me in the right direction.
>
> Here is why I ask:
>
> My work environment makes heavy use of externals, almost always at
> the file level. My core set of source code gets built on several
> different platforms, and also has many variant builds on each
> platform for specific purposes. Without getting in to a philosophical
> discussion of why this is or how it might be changed, I will just say
> that the externals property works well for my needs.
>
> I would love to see the following additions:
>
> Drag and Drop Support - Actually setting up the externals for a
> project can be a little cumbersome, especially when I am pulling in
> 30 or so external files. Adding a context menu selection for
> externals when Right Dragging in the Repo Browser and/or the working
> copy would be HUGE for me, especially if it supported dragging and
> dropping a group of files.

Created issue #284 for this:
http://code.google.com/p/tortoisesvn/issues/detail?id=284

> Icon Overlays - The Repo Browser overlays a little arrow to indicate
> the file is an external reference. However, the icon in the working
> copy is that of a normal versioned file. It would be nice if the
> working copy also indicated that the file pulled in with externals
> actually lives somewhere else.

Since there are only a limited number of overlays available in explorer
and more and more apps start using them, adding another one would not
work in most setups.

> Committing an External - It is nice that you can modify and commit
> the external from the working copy. But this can get you in a little
> trouble if you have pegged the external to a specific revision. The
> commit of the external will update the versioned source as well the
> working copy, but if you do an update on the working copy you will go
> back to the pegged version. It would be great if the commit function
> could recognize when the action is taking place on an external, and
> maybe provide the option to update the pegged revision number of the
> externals property, or even an option to create a local versioned
> file and break the link to the external.

Created issue #285 for this:
http://code.google.com/p/tortoisesvn/issues/detail?id=285

>
> Externals Dialog - 1) A Browse button for the Local Path would be
> nice, with a way to create a folder if necessary. This dialog looks
> like it may have been set up before externals to individual files was
> allowed, so it took me a little while to figure out that if I wanted
> the external file to be placed in the the folder where the externals
> property is set, I need to put in a file name in the Local Path box.

Note that you should _not_ create externals so that they get pulled down
into a subfolder. Externals must be set up so that they only appear in
the folder where the property is set to.
While this worked in the past and still works partially in 1.7, this was
never intended to work and might stop working completely any time.

> 2) It is nice that the URL entry has a browse button, but it can
> behave in different ways. If you have a Repository path in the URL
> box you will open up the Repo Browser to that location. If the URL
> box is empty, you will get a dialog for the local computer with no
> way to go through the Repo Browser.

enter an url and the repo browser opens.
if you don't have an url, then the repo browser simply can not open:
where would it go to?

>
> 3) It is not clear to me if you can do this or not, but most of the
> time I would like to pull the HEAD revision and peg the external to
> whatever that my be. A little "Peg to this revision" checkbox right
> next to the "HEAD revision" radio button would be a beautiful thing!

It's possible, but would be slow. To find the current HEAD revision, the
repository must be contacted.
But even if TSVN would do that for you, it won't save you any time since
it's the same as if you click the "Show log" button and select the HEAD
revision yourself.

Stefan

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

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2954683

Brian St Jacques

unread,
Apr 30, 2012, 11:22:39 AM4/30/12
to us...@tortoisesvn.tigris.org
Thank you for the responses. It is very much appreciated!

Brian

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2956340
Reply all
Reply to author
Forward
0 new messages