I just went through this $(EXPLETIVE) with our recipe book. It seems that a recent-ish change to Yocto made changes to SRCREV insufficient to trigger an update/rebuild. (Actually, it triggers a fetch and unpack, but it unpacks the old version, so you end up burning CPU cycles rebuilding what you already have). Yocto now apparently almost exclusively focuses its attention on ${PV}.
The "solution", therefore, is to incorporate SRCREV into PV, along the following lines:
SRCREV = "{Git SHA1 commit ID}"
PV="1.0+git${SRCPV}"
Thus, when you update SRCREV, PV will get changed, too, and trigger a rebuild. Remember that SRCREV must point to a commit on the same branch as you specified in SRCURI. Also, expect your build/tmp/work/... directory tree to get larger as stale build revs get left behind.