Community
Participate
Working Groups
When you use the context menu to delete a branch from the 'Git Repositories' view, it does _not_ prompt you for confirmation and can lead to data loss. The dialog should warn me if that branch hasn't been merged, similar to the command line requiring the user to use -D to acknowledge that the branch can be deleted irrespective of its merged status.
(In reply to comment #0) > The dialog should warn me if that branch hasn't been merged, similar to the > command line requiring the user to use -D to acknowledge that the branch can be > deleted irrespective of its merged status. Looking at the code, it does warn me if the branch hasn't been merged yet. So this paragraph can be ignored.
Maybe we could add a "Restore branch" action in the reflog view instead of an annoying confirmation dialog.
I believe the current behavior is adequate. Hence reducing priority. Can you specify which data can get lost here ? If you don't get a confirmation dialog this means you will not loose any commit (since they all are merged into another existing branch).
(In reply to comment #3) > Can you specify which data can get lost here ? If you don't get a confirmation > dialog this means you will not loose any commit (since they all are merged into > another existing branch). Agreed.
I still think there should be a simple dialog similar to when deleting a tag. I don't think Branch Deletion is a frequent enough task that a simple popup would be much of an annoyance. On the other hand, an accidental branch deletion could be very annoying. Here's a user story: 1) I make 50 commits on master and think it's quite stable. 2) I create Branch_A off master. 3) I now make 50 more commits to master before I get around to working on Branch_A. 4) I try to checkout Branch_A but accidentally hit delete. In this case, there's no easy way to retrieve my branch using eGit. I probably should have tagged the stable revision but I thought branching off it would be enough.
Also, newbies often don't understand that git branches are only pointers. If a newbie from an SVN background were to accidentally delete a branch, they would most likely think they had deleted all the revisions too. This would most likely be very distressing and they might not know what to do.