ok, so here are a couple of bugs.I am currently checking the result of a merge by checking the modifications. There are hundrets of modified files, dozens of added and deleted, and most are still "normal".1) (critical!) I found that some files, that have been moved AND modified, are shown as "normal (+)". This is wrong, they must be shown as "modified (+)". I am checking all modified files, but if files are falsely shown as normal, then I don't check them.Also, when I open them, the path of the file in the current working copy is given to both sides of the external comparison tool (Beyond Compare 4), which then says "no differences". This at least is consistent with the wrong status, but it means you need to fix both.
2) I did not know the meaning of "+", so I eventually looked it up and via stackoverflow I found https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-wcstatus.html. This page says, " Purple: Added items. Items which have been added with history have a + sign in the Text status column, and a tooltip shows where the item was copied from."First, + can also appear at normal.Second, the description of that + is quite hidden. You could put it in a separate paragraph, and use the term "(+)", since that is easier to find and actually what is written in the status text.
Third, the mentioned tooltip is shown at wrong positions. Take the "check for modifications" dialog, select a file and then hold the mouse over the status of another file. The tooltip will be shown at the selected file, which is wrong, because it doesn't belong there. Also, the tooltip is shown over the line of the file, it should be shown underneath. If you scroll a bit, then the tooltip may even be shown outside the window, or outside the screen.
One last thing: You may want to add a link back to your TortoiseSVN product main page in the document pages.
I know that I did not buy the software (I will ask my boss to donate some money since we heavily depend on your software; I think he'll ask for an invoice). Therefore please apologize for my direct words, but that's just my language as a German Engineer. ;-)So at least I have to say a big THANK YOU for all the work you do for us
On Wednesday, December 9, 2020 at 12:32:39 PM UTC+1 Tobias Knauss wrote:ok, so here are a couple of bugs.I am currently checking the result of a merge by checking the modifications. There are hundrets of modified files, dozens of added and deleted, and most are still "normal".1) (critical!) I found that some files, that have been moved AND modified, are shown as "normal (+)". This is wrong, they must be shown as "modified (+)". I am checking all modified files, but if files are falsely shown as normal, then I don't check them.Also, when I open them, the path of the file in the current working copy is given to both sides of the external comparison tool (Beyond Compare 4), which then says "no differences". This at least is consistent with the wrong status, but it means you need to fix both.if your compare-tool doesn't show any differences, then there really are no differences.Also, the only way I can get a "normal (+)" status is by moving the parent folder and then merge that. And in that case, the files really haven't been modified.Also: if you right-click on the list control header, you can select more columns, for example "text status" and "property status". Sometimes those can show more info.Apart from that: I can't really show a "wrong" status here: if the svn lib reports the status as "normal", TSVN has to show exactly that. What I will do is change the color of an item with history, i.e. if the "(+)" is shown.
Third, the mentioned tooltip is shown at wrong positions. Take the "check for modifications" dialog, select a file and then hold the mouse over the status of another file. The tooltip will be shown at the selected file, which is wrong, because it doesn't belong there. Also, the tooltip is shown over the line of the file, it should be shown underneath. If you scroll a bit, then the tooltip may even be shown outside the window, or outside the screen.the position of the tooltips is determined by the list control itself, so nothing I can do here, sorry.
Stefan schrieb am Mittwoch, 9. Dezember 2020 um 19:02:52 UTC+1:On Wednesday, December 9, 2020 at 12:32:39 PM UTC+1 Tobias Knauss wrote:ok, so here are a couple of bugs.I am currently checking the result of a merge by checking the modifications. There are hundrets of modified files, dozens of added and deleted, and most are still "normal".1) (critical!) I found that some files, that have been moved AND modified, are shown as "normal (+)". This is wrong, they must be shown as "modified (+)". I am checking all modified files, but if files are falsely shown as normal, then I don't check them.Also, when I open them, the path of the file in the current working copy is given to both sides of the external comparison tool (Beyond Compare 4), which then says "no differences". This at least is consistent with the wrong status, but it means you need to fix both.if your compare-tool doesn't show any differences, then there really are no differences.Also, the only way I can get a "normal (+)" status is by moving the parent folder and then merge that. And in that case, the files really haven't been modified.Also: if you right-click on the list control header, you can select more columns, for example "text status" and "property status". Sometimes those can show more info.Apart from that: I can't really show a "wrong" status here: if the svn lib reports the status as "normal", TSVN has to show exactly that. What I will do is change the color of an item with history, i.e. if the "(+)" is shown.There ARE differences if I compare the file from the original file (the one to be deleted) and the added and modified file. I only don't see differences if I start the file compare by double-clicking on the line with the added file, because from this line, the same path and filename is sent by TSVN as left and right file in the comparison.You should be able to reproduce it by changing the parent folder of a file AND modifying it (don't know whether the order of operations is relevant).Since you say that you just forward the status, it looks like the failure is in SVN library then. This really is a problem when reviewing the merge. I had hoped for a quick solution until tomorrow, but that has become unlikely.How can I give you more details about the issue? As suggested in the other issue, you may watch over teamviewer (contact me by email, knauss at schmoll-maschinen dot de).
Which solution do you suggest for locking a repo that has such changes?Should I use the repo browser and lock the unchanged head revision in it?Would it make sense to automatically adapt the chosen files in the background (exclude local new files from the locking list, add local deleted ones), so that the locking operation achieves the expected result?
Okay, if the svn lib reports "normal (+)", then you can do nothing about it but forward it to the user.But isn't this a bug in the svn lib then? In my opinion, "normal (+)" is wrong, it should be "added (+)" as mentioned above, also because your Commit dialog is not able to link the added and the deleted file and open a comparison with both.What do you think about it?
> you don't have to lock that file:> the file is at a new location locally, so all other users don't have that file (yet). Only once you commit the merge and the moved folder/file, *then* you can lock the file because then it has a 'connection' to the repository.Yes, the added file is not yet in the repo, so of course it cannot be locked. But it is autotically maselected in the lock dialog, which should not be the case.
> I'm working on a workaround the svn lib problem here when doing a diff-against-base. However the status will still be reported as normal.> And "added" would be wrong too: the file in relative to it's parent folder wasn't added at all but stayed the same."Added" would not be wrong, because the file *was added* in the new parent folder.If it had *not* been "added", then the consequence must be that there was no *deleted* file either. But there *is* a delete file, so there also must be an *added* file.
I am thinking about creating a bug report for the SVN lib, but I don't have any insight to the lib itself, since I don't use it.> so basically there's nothing I can do here.You can. I can contribute to a bug report, but I think you're the one who needs to create it. Please understand that it's not about offloading work to you, but if I was the one who starts a conversation with the developers of the SVN lib, then it basically is a ping-pong with 3 people, and I am in the middle, although I have the least participation in the whole process.I will assist you in convincing the SVN lib developers if necessary.
On Saturday, December 12, 2020 at 10:02:37 AM UTC+1 Tobias Knauss wrote:> you don't have to lock that file:> the file is at a new location locally, so all other users don't have that file (yet). Only once you commit the merge and the moved folder/file, *then* you can lock the file because then it has a 'connection' to the repository.Yes, the added file is not yet in the repo, so of course it cannot be locked. But it is autotically maselected in the lock dialog, which should not be the case.the lock dialog does not contact the repository, so it's not possible for the lock dialog to know that the file isn't present (yet) in the repository.
> I'm working on a workaround the svn lib problem here when doing a diff-against-base. However the status will still be reported as normal.> And "added" would be wrong too: the file in relative to it's parent folder wasn't added at all but stayed the same."Added" would not be wrong, because the file *was added* in the new parent folder.If it had *not* been "added", then the consequence must be that there was no *deleted* file either. But there *is* a delete file, so there also must be an *added* file.but since the move information is gone, how would I know that the added and the deleted item were the same before? They could be completely unrelated.
I am thinking about creating a bug report for the SVN lib, but I don't have any insight to the lib itself, since I don't use it.> so basically there's nothing I can do here.You can. I can contribute to a bug report, but I think you're the one who needs to create it. Please understand that it's not about offloading work to you, but if I was the one who starts a conversation with the developers of the SVN lib, then it basically is a ping-pong with 3 people, and I am in the middle, although I have the least participation in the whole process.I will assist you in convincing the SVN lib developers if necessary.good luck with that. You can search the svn dev mailing list for "move handling" and the like and you'll find tons of discussions. Handling renames is done the best way possible. Other implementations would lead to massive performance issues on the server side.