- Copy gitkraken-wsl-bash.bat and gitkraken-wsl-bash.sh, I put them in ~/bin.
- Make sure that the script path in the bat-file and MOUNT_ROOT in the sh-file are correct.
- Set
gitkraken-wsl-bash.bat
as 'Path to sh.exe' in GitKraken.
Last active
February 10, 2023 21:08
-
-
Save carlolars/ed976078a66e7d57bb04f959270bdee3 to your computer and use it in GitHub Desktop.
Use bash from WSL as sh.exe for GitKraken (5.0.4) for Windows
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
REM Make sure that the path to the script is correct! | |
@bash -l -c "~/bin/gitkraken-wsl-bash.sh %*" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Mount root for windows drives, default is /mnt/ but can be changed in /etc/wsl.conf | |
MOUNT_ROOT=/mnt/ | |
# Read GitKraken's hook script and arguments from STDIN | |
read -r GITKRAKEN_CMD | |
# Cleanup the path to the script: | |
# - Replace two or more '\' in a row with a single '/'. | |
# - Replace the windows drive letter (C:) with the mount point for the drive (/mnt/c) | |
FIXED_CMD=$(echo $GITKRAKEN_CMD | sed 's_\\\{2,\}_/_g' | sed "s_\([A-Z]\)\:/_$MOUNT_ROOT\L\1/_g") | |
# Run the hook script | |
bash -c "$FIXED_CMD" |
I put both files into the same directory, adjusted the path in the gitkraken-wsl-bash.bat
and set my GitKraken path for the sh.exe
to this batch file.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@DAmNRelentless how did you get this to work with later versions of gitkraken?
I thought they used an internal git implementation instead of external commands?