My company has a distributed system in which a remote CentOS machine allocates worker's home directories with all our git repos working, built and executed on it.
In my local machine (Ubuntu), I've the remote home directory mounted over NFS to be able to edit the files with my favourite IDE.
For managing the version control I want to use GitKraken on my local machine (there is no SSH tunneling) but is extremely slow. If I use git from command lines connecting the remote machine over SSH performance normally. If I execute the same in my local it's slowered but still usable. I guess that GitKraken makes more operations in the background which makes accumulated delays.
Is there a way to improve the performance or a better way to work with this requirements? Being able to use GitKraken and vsc locally.
I have already try several things like: mounting with systemd, sshfs, cleaning repositories with git gc
, refreshing git indexes in my local machine (because the I've read It could influence the creation in CentOS vs Debian), improve NFS options and cache...
PS: I had a crazy idea to improve Git's performance. I created a Git alias on my local machine that first connects to the remote machine via SSH:
alias git='ssh -A <user>@<host> "cd ${PWD} && git"'
This significantly improved performance compared to using Git on NFS-mounted repositories.
While I know that there are probably ways to further improve performance using Git config proxies, and while this approach has its inconveniences, it was acceptable in my case. However, my main interest was in using GitKraken.
Since GitKraken uses its own Git implementation (libgit2), it does not rely on the Git installed on the bare machine. In that aspect, my hands are tied.