"Git Bash here" is not preserving bash history between sessions
As mentioned here: https://stackoverflow.com/a/60718848/6680510
Create the following files
~/.bash_profile ~/.bashrc
And put the following line in both of them
PROMPT_COMMAND='history -a'
To do this from the console (git bash) itself use the following commands
echo "PROMPT_COMMAND='history -a'" >> ~/.bash_profile echo "PROMPT_COMMAND='history -a'" >> ~/.bashrc
What
history -a
meansFrom
history --help
command-a append history lines from this session to the history file
What is
PROMPT_COMMAND
?Bash provides an environment variable called PROMPT_COMMAND. The contents of this variable are executed as a regular Bash command just before Bash displays a prompt.
Difference between
.bash_profile
AND.bashrc
.bash_profile
is executed for login shells, while.bashrc
is executed for interactive non-login shells.When you login (type username and password) via console, either sitting at the machine, or remotely via ssh: .bash_profile is executed to configure your shell before the initial command prompt.
But, if you’ve already logged into your machine and open a new terminal window (xterm) then .bashrc is executed before the window command prompt. .bashrc is also run when you start a new bash instance by typing /bin/bash in a terminal.
On OS X, Terminal by default runs a login shell every time, so this is a little different to most other systems, but you can configure that in the preferences.
References
https://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/x264.html https://apple.stackexchange.com/questions/51036/what-is-the-difference-between-bash-profile-and-bashrc
Putting
PROMPT_COMMAND='history -a ~/.bash_history'
into the .bash_profile did it for me.
You should be able to fix this by adding this line to your ~/.bash_profile
PROMPT_COMMAND='history -a'