如何使Visual Studio代码记住以前的提交消息?

时间:2016-09-12 07:21:57

标签: visual-studio-code

我最近开始使用Microsoft的开源Visual Studio Code IDE开发Web项目,从Eclipse转移。我发现VSCode非常直观且使用起来非常简单。

但我在VSCode中遗漏的一个功能是IDE无法记住提交消息(或者我没有足够的探索?!)。与Eclipse(填充历史提交消息的下拉列表)不同,我们必须在每次提交更改时在VSCode中手动输入提交消息。

  • 是否有可用于此目的的VSCode扩展名?

  • 我可以在settings.json中创建任何条目,以便更旧的提交消息 是自动检索?

我们非常感谢任何帮助。

3 个答案:

答案 0 :(得分:8)

不需要单独的扩展或类似的东西,Git可以通过提交模板处理这个,VSCode已经支持它们。

例如,假设您有类似unix的并且位于存储库的根目录中:

echo "My fancy commit message" > .mycommitmsg.txt
git config --local commit.template .mycommitmsg.txt

从那里,VSC将自动使用.mycommitmsg.txt的内容。

第二步是使用上次提交的内容填充此消息文件。这可以通过Git钩子来实现,在你的情况下你需要post-commit钩子。

使用以下内容创建/编辑文件.git/hooks/post-commit

#!/bin/sh

printf "`git log -1 --pretty=%s`" > .gitmessage.txt

别忘了让它可执行:

chmod +x .git/hooks/post-commit

从那里开始,一切都应该像你描述的那样工作。提交后挂钩将自动用最后一条消息的内容填充消息文件,VSC会在您提交后立即使用新消息。

答案 1 :(得分:3)

VSCode 1.51(2020年10月)确实具有类似功能:

Source Control input box saves commit message history

此地址指向feature request来导航SCM提交历史记录。

kb(scm.viewPreviousCommit)kb(scm.viewNextCommit)分别显示上一个和下一个提交。
要直接移至输入框的第一个和最后一个位置,请按 Alt 以及相应的箭头键。

以过去的提交消息为基础,并在不丢失草稿消息的情况下回顾历史记录。

After typing a message in the SCM input box, then staging and committing changes, pressing the up arrow reveals the message that was just committed.

答案 2 :(得分:1)

有些扩展可能对某些人来说很有趣:

https://marketplace.visualstudio.com/items?itemName=JanBn.git-last-commit-message

在知道@kwood的答案之前,我已经安装了它,因为它对我有一点帮助,我将其作为第二选择。