I have git-branchless setup in this repository and for the longest time I was confounded, why set_tracking_branch did not work (anymore).
Turns out, git-branchless adds an [include] section to the .git/config file and this causes GitPython to quietly skip writing the config changes back that are necessary for set_tracking_branch to have any effect.
Could we maybe set merge_includes=False for the config_writer; at least in the Head class?