Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IOTIDE 2157: hg forget operation replaced with discard #35

Merged
merged 3 commits into from
Nov 13, 2019
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion packages/hg/src/browser/hg-contribution.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,14 +187,19 @@ export class HgContribution implements CommandContribution, MenuContribution, Ta
commandId: HG_COMMANDS.TRACK.id,
when: 'scmProvider == hg && scmResourceGroup == untracked'
});
registerResourceAction('1_modification', {
commandId: HG_COMMANDS.DISCARD.id,
when: 'scmProvider == hg && scmResourceGroup == changed'
});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Surely if we support 'discard' but do not support 'forget' then we should be doing it the same way as Git. I.e. the user should delete the file first (typically in the Navigator). There is no equivalent in Git to 'forget' (in the case where it applies to a committed file), and as files without changes do not show up in the Source Control view, such actions would have to be available in the navigator. I think this change is ok, but I just want to be sure because I know Joe wants things to work the same in Git and Hg where it makes sense to treat them the same.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With this change the forget action is completely removed, so, if I understand correctly what you mean, the interface should be the same you get on Git.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I see now the Git implementation deletes the file if it's not in the index, so we are fine.


registerResourceAction('navigation', {
commandId: HG_COMMANDS.OPEN_CHANGED_FILE.id,
when: 'scmProvider == hg && scmResourceGroup == changed'
});
// currently not shown
registerResourceAction('1_modification', {
commandId: HG_COMMANDS.UNTRACK.id,
when: 'scmProvider == hg && scmResourceGroup == changed'
when: 'scmProvider == hg && false'
});

registerResourceAction('navigation', {
Expand Down