Useful snippets

    Open Webstorm from terminal (Windows + WSL & Mac)

    2023-12-08

    WSL

    .bashrc

    webstorm()
    {
         # /mnt/c/Program\ Files/JetBrains/WebStorm\ 2022.1.2/bin/webstorm64.exe "$1" > /dev/null 2>&1 &!
         /mnt/c/Program\ Files/JetBrains/WebStorm\ 2023.2.5/bin/webstorm64.exe .
    }

    Usage: Run webstorm in terminal

    Mac

    .zshrc

    webstorm() {
    #   open "/Applications/WebStorm.app" .
        open -na "WebStorm.app" --args "$@"
    }

    Usage: Run webstorm . in terminal

    Docs WSL & Mac

    https://www.jetbrains.com/help/webstorm/working-with-the-ide-features-from-command-line.html

    Revert changes introduced in old commit

    2025-08-11

    Reverse apply changes from old commit

    git checkout <commit-hash>
    git log # copy previous commit hash
    git diff <previous-commit-hash> > diff.patch
    git checkout <main-or-up-to-date-branch>
    git apply diff.patch --reverse

    Create new commit that revert last commit

    git revert <last-commit-hash>

    Bash. check if a file exists

    2026-03-03

    Check if prepush is activated or not

    lsprepush() {
      if [[ -f ".git/hooks/pre-push" ]]; then
        echo ".git/hooks/pre-push was found:"
        echo "pre-push is activated"
      else
        if [[ -f ".git/hooks/pre-push.sample" ]]; then
          echo ".git/hooks/pre-push was not found:"
          echo "but .git/hooks/pre-push.sample was found:"
          echo "pre-push is deactivated"
        else
          echo "Hmmmmm"
        fi
      fi
    }