.bash_history不会在Git for Windows(git bash)中更新

我使用Git for Windows(版本1.7.8-preview20111206),即使我的HOME文件夹中有一个.bash_history文件,它也不会自动更新。 当我启动Git Bash时,我可以在历史命令中看到我手动添加到.bash_history文件,但不会自动更新。

我使用了shopt -s histappend命令来确保每次closuresshell时都保存历史logging,但不起作用。

如果我手动使用history -w命令,然后我的文件得到更新,但我想了解为什么shopt命令不工作,因为我理解它应该。

任何人都可以告诉我为什么会发生这种行为?

提前致谢

我把它放在我的~/.bash_profile

 PROMPT_COMMAND='history -a' 

正如这里所说,要在Windows上保存git bash历史记录,您不能用X按钮关闭终端。 改用exit命令。 无论接受答案中提到的配置如何,命令的历史将被保存。

如果你使用Windows 8的git bash,只需把它放在你的〜/ .bash_logout文件中:

 history > .bash_history 

显然你需要一个〜/ .bash_history文件。

问候。