--- a/eric7/Plugins/VcsPlugins/vcsGit/git.py Wed Sep 22 19:52:28 2021 +0200 +++ b/eric7/Plugins/VcsPlugins/vcsGit/git.py Thu Sep 23 18:20:31 2021 +0200 @@ -491,6 +491,44 @@ self.committed.emit() self.checkVCSStatus() + def vcsCommitMessages(self): + """ + Public method to get the list of saved commit messages. + + @return list of saved commit messages + @rtype list of str + """ + # try per project commit history first + messages = self._vcsProjectCommitMessages() + if not messages: + # empty list returned, try the vcs specific one + messages = self.getPlugin().getPreferences('Commits') + + return messages + + def vcsAddCommitMessage(self, message): + """ + Public method to add a commit message to the list of saved messages. + + @param message message to be added + @type str + """ + if not self._vcsAddProjectCommitMessage(message): + commitMessages = self.vcsCommitMessages() + if message in commitMessages: + commitMessages.remove(message) + commitMessages.insert(0, message) + no = Preferences.getVCS("CommitMessages") + del commitMessages[no:] + self.getPlugin().setPreferences('Commits', commitMessages) + + def vcsClearCommitMessages(self): + """ + Public method to clear the list of saved messages. + """ + if not self._vcsClearProjectCommitMessages(): + self.getPlugin().setPreferences('Commits', []) + def vcsUpdate(self, name, noDialog=False, revision=None): """ Public method used to update a file/directory with the Git