Skip to content
Snippets Groups Projects
Unverified Commit 6c963333 authored by Fredrik Jonsson's avatar Fredrik Jonsson Committed by GitHub
Browse files

Add tips for forced push and history search in shell. (#3991)

parent 29723e96
No related branches found
No related tags found
1 merge request!89Upgrade to 5.10.0
# Hypha developer tips
## Git config
## Git configuration and commands
To avoid spurious merge commits use a rebase workflow when appropriate.
......@@ -18,6 +18,12 @@ git fetch origin
git rebase origin/main
```
To update the feature branch on GitHub you then need to do a forced push. Instead of `--force` use `--force-with-lease`. If someone have made changes to the branch that you do not have locally you get a warning. It is a good habit to always use `--force-with-lease`. One day it will save you from a bad mistake.
```shell
git push --force-with-lease
```
## Postgres snapshots/restore
Hypha dev requirements contain the [dslr](https://github.com/mixxorz/DSLR) tool. Use this for fast snapshots and restores of the postgres database.
......@@ -68,3 +74,58 @@ If you editor does not a Language Server Protocol (LSP) preinstalled make sure t
Your editor most likely have plugins for the other languages Hypha uses as well, css/scss, yaml and html. We recoment to install them as well.
## Shell configuration
In the shell you can press the up arrow to see earlier (history) commands. It is possible to bind this to history search.
You can then e.g. write `git` and then press the upp arrow and see the commands from your history that start with `git`. So useful and intuitive that it should be the default.
For zsh:
```shell
# Settings for history function
HISTFILE=$ZDOTDIR/.zsh_history
HISTSIZE=75000
SAVEHIST=70000
setopt append_history
setopt extended_history
setopt hist_expire_dups_first
setopt hist_ignore_dups
setopt hist_ignore_space
setopt hist_reduce_blanks
setopt hist_verify
setopt inc_append_history
setopt share_history
autoload -Uz up-line-or-beginning-search
autoload -Uz down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
# Bind up/down arrows to history search.
if [[ $OSTYPE == darwin* ]]; then
bindkey '\e[A' up-line-or-beginning-search
bindkey '\e[B' down-line-or-beginning-search
else
bindkey "${terminfo[kcuu1]}" up-line-or-beginning-search
bindkey "${terminfo[kcud1]}" down-line-or-beginning-search
fi
```
For bash:
```shell
# Settings for history function
export HISTFILESIZE=50000
export HISTSIZE=50000
export HISTCONTROL=ignoreboth:erasedups
export HISTIGNORE='\&:e:c:l:ca:cd:cd -'
# Make history work well with multiple shells
# append to the history file, don't overwrite it
shopt -s histappend
# Bind up/down arrow to history search
bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment