Skip to content

fix(scm): persist commit message history after undo #258036

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

killerdevildog
Copy link

Fixes #198975

  • Add persistent storage for commit messages using extension's globalState
  • Store commit messages in commitOperationCleanup after successful commits
  • Merge persistent history with Git log when initializing
  • Maintain uniqueness and limit history to 32 entries
  • Use repository-specific storage keys to avoid conflicts
  • Ensure commit messages survive undo operations

The issue was that commit message history relied solely on Git log entries. When commits are undone, they disappear from the log and thus from the history suggestions. This fix adds a persistent storage layer that preserves commit messages independently of the Git log, ensuring that undone messages remain available in the auto-complete history.

Fixes microsoft#198975

- Add persistent storage for commit messages using extension's globalState
- Store commit messages in commitOperationCleanup after successful commits
- Merge persistent history with Git log when initializing
- Maintain uniqueness and limit history to 32 entries
- Use repository-specific storage keys to avoid conflicts
- Ensure commit messages survive undo operations

The issue was that commit message history relied solely on Git log entries.
When commits are undone, they disappear from the log and thus from the
history suggestions. This fix adds a persistent storage layer that
preserves commit messages independently of the Git log, ensuring that
undone messages remain available in the auto-complete history.
@killerdevildog
Copy link
Author

@killerdevildog please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.

@microsoft-github-policy-service agree [company="{your company}"]

Options:

  • (default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.
@microsoft-github-policy-service agree
  • (when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.
@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree

@killerdevildog
Copy link
Author

@microsoft-github-policy-service agree

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Commit message(s) disappear after undoing the last commit
2 participants