hpi-swa / Squot

Squeak Object Tracker - Version control for arbitrary objects, currently with Git storage
Other
58 stars 29 forks source link

Feature Request: UI for parents of working copy #370

Closed LinqLover closed 2 years ago

LinqLover commented 2 years ago

Analogously to what we know the Monticello browsers with the Adopt button and the ancestors display in the package list and in the save version dialog, it would be nice if the Squit Browser would provide an option to manage the ancestors of the working copy as well. At the moment, these seem only to be available via "explore working copy". For instance, after canceling a merge commit, I have an additionalParents item but this is not shown at any place in the UI.

Ideally, I would see this before saving a new version and even could remove the additionalParents again. Maybe, analogously to the "make this the default branch" item, there could also be a "remove all additionalParents" item and/or a "add this commit to the parents". Just brainstorming. :-)

j4yk commented 2 years ago

Discoverability issues aside, "Reset branch to this commit" already clears the additional parents when you invoke it with the activate branch selected. (It even warns you about it.)

On the command line, there would be git merge --abort, but we cannot simply attach an argument to the merge button.

What do you think about showing a prompt when the user presses the commit button when there are additional parents? If the user then chooses "no" the additional parents are removed before proceeding to the save dialog.

LinqLover commented 2 years ago

On the command line, there would be git merge --abort, but we cannot simply attach an argument to the merge button.

Once menu buttons arrive in the Trunk, this would be possible - for now, we could only set the menu: of the button or detect a modifier key, but this would lack discoverability again. :-)

What do you think about showing a prompt when the user presses the commit button when there are additional parents? If the user then chooses "no" the additional parents are removed before proceeding to the save dialog.

I cannot think of a legit situation where you would have additional parents when starting a commit, so this sounds nice! Maybe just display this information in the commit dialog? Hmm, but this would overload the UI. Sounds like a good idea! :-)

j4yk commented 2 years ago

Please review 3978f9e.

LinqLover commented 2 years ago

(Oops, I should really tidy up my inbox more frequently ...) Thank you, this dialog has already saved me a number of times!