I've found GitKraken and it looks cool and I never have an issue with index.lock unlike SourceTree. The only problem is I am unable to push and pull to my server in the other room. I have configured my ssh keys and that. I can push/pull to github/bitbucket account but not next room. If ever you have encountered such problems, or if ever you have a tiny bit of idea on how I maybe able to solve my problem, please let me know. I have already made contact with the support team but response is very scarce.
It seems that on my mac if I don't run ssh-add -k ~/.ssh/id_rsa
then I get errors about having a bad ssh key.
This also seems to work on Ubuntu (18.04).