Tom didn't much like the way of using git that I'm using, namely mirroring the upstream repo locally and then cloning it for each live branch, setting the push url to go straight back upstream. His objection, as I understood it, is that it introduces an extra asynchronicity into to the pull process. But that need not be so. I do have a cron job that regularly does a "git fetch" on the mirror. But I also just implemented this shell function to use, and put it in my .bashrc:
This seems to work pretty well, and pretty fast too, about 1.5s on my slow old work machine, if there is nothing to do, and I suspect most of that is network latency.function pgpull() { pushd /home/andrew/pgl/postgresql.mirror git fetch popd git pull }