TSVN's Commit & Log file browsing window to have additional properties

25 views
Skip to first unread message

Sze Kai Eng

unread,
May 16, 2025, 6:13:37 AMMay 16
to TortoiseSVN-dev
Hello,

I would like to add additional properties to TSVN's Commit and Log Dialog file browser. I currently have a csv of file paths with additional metadata that I would like to see appear as additional columns.


I've checked out the source code, and while browsing through the source code, I stumbled upon the issue tracker plugin, which utilizes the BugtraqInterface, and creates a new column in the Log Dialog called Bug-ID.

I was wondering if there are other interfaces available to us to extend, if not would the only course of action to edit the src directly to make a custom tsvn build? or does the plugins / integrations have innate ability to override and add this functionality.

Thanks for taking the time to read through this, I look forward to seeing what's the best course of action for me.

Regards,
Kai

Torax Malu

unread,
May 16, 2025, 1:09:53 PMMay 16
to TortoiseSVN-dev
I think, you’ve to run a 2nd run to get the (possible) properties to your files and then add them with some joint operation to yout existing CVS-file…

Stefan

unread,
May 16, 2025, 1:13:53 PMMay 16
to TortoiseSVN-dev
you could just add the metadata as svn properties to every file you want. Then, right-click on the column header in the dialog and select the property to show.
So, for example you have additional data for file "test.txt", like "metadata x", then add a property named "mymetadata" with value "metadata x" to the file "test.txt".

Sze Kai Eng

unread,
May 19, 2025, 12:55:36 AMMay 19
to TortoiseSVN-dev
Thank you for the suggestion Stefan! It sounds like a really simple and straightforward plan. Is that suggestion something I would have to implement or does it already exist in tsvn?

If it is something I would have to implement, where would be best to get started with?

Regards,
Kai

Stefan

unread,
May 19, 2025, 10:21:52 AMMay 19
to TortoiseSVN-dev
On Monday, May 19, 2025 at 6:55:36 AM UTC+2 szeka...@gmail.com wrote:
Thank you for the suggestion Stefan! It sounds like a really simple and straightforward plan. Is that suggestion something I would have to implement or does it already exist in tsvn?

If it is something I would have to implement, where would be best to get started with?

you can already do this in TSVN.
 

Sze Kai Eng

unread,
May 19, 2025, 11:50:10 AMMay 19
to TortoiseSVN-dev
Unsure if I'm missing something, but when I am checking the commit window, I cant seem to find the context window which allows for this.

Screenshot 2025-05-19 224513.png

However, I do see it in `Check for modification', not in either Commit or Show Logs (which doesn't even allow for a context window to appear on right click).
Screenshot 2025-05-19 224741.png

I'm currently on TortoiseSVN 1.14.9, Build 29743. Is it on a different build? or am I missing a setting?

Sorry if this was something simple and obvious that I missed out, but I really appreciate the help ^^''.

Regards,
Kai

Daniel Sahlberg

unread,
May 26, 2025, 3:38:55 AMMay 26
to TortoiseSVN-dev
I went treasure-hunting in the source code and it seems to be this line in CommitDlg.cpp that initialize the file list control:

682:    BOOL success = m_listCtrl.GetStatus(m_pathList);

It could be changed to:

682 :    BOOL success = m_listCtrl.GetStatus(m_pathList, false, false, true);

This would ALWAYS show the property columns, but I believe there may be a performance issue doing this.

Compared to the repo browser dialog, there is a checkbox to show Properties (if you uncheck this, the property columns will disappear from the context menu). Maybe it would be better to add this checkbox to the commit dialog as well? Would you consider contributing the code required?

A workaround would be to edit the Windows registry under HKCU\Software\TortoiseSVN\StatusColumns and add the desired column[s] (separated by space) to the CommitDlgShownUserProps value.

Kind regards,
Daniel



Reply all
Reply to author
Forward
0 new messages