I think that different expiration periods for regular branches (long),
remote-tracking branches (short), stash (never), and HEAD (perhaps
longes) are a very good idea.
For example reflog for "pu" branch might pin quite a large amount
of non-interesting objects, protecting these unnecessarily.
ShadeHawk on #git