Según mi señor jefe que sabe mucho, el origen es el siguiente:
En la edad media (ahí es nada), cuando se construía una iglesia, se utilizaban unos andamios de madera, llamados cimbras, que servían fundamentalmente para sujetar los arcos y bóvedas durante la construcción,a modo de encofrados. Estas cimbras eran relativamente ligeras, sobretodo en comparación con las piedras que tenían que aguantar, por lo que su inestabilidad era frecuente causa de accidentes.
Sin embargo, como se construian con tablones planos (evidentemente los perfiles y/o tubos aun tardarian siglos en inventarse), ofrecían una resistencia al viento importante, por lo que solía colocarse un trapo en lo alto de la cimbra a modo de "detector de viento".
Una vez que se había terminado de ejecutar la bóveda (lo que se conoce como "cubrir aguas"), las cimbras ya no tenían que resistir el peso de las mismas, si bien aún eran necesarias, fundamentalmente para tejar y rematar la cubierta.
Aprovechando entonces que ya había un sitio donde resguardarse, pues la cubierta ya estaba acabada, se celebraba una fiesta para festejar el feliz desarrollo de la obra, en la que participaban todos los miembros de la obra, incluidos lo que hoy en día se conoce como "Direccion Facultativa" (arquitecto, aparejador).
Entonces, el miembro más joven de la obra (tradición que ya se ha perdido), se subía a lo alto de la cimbra y sustituía el trapo por una bandera nueva, que duraba hasta que se terminaba la obra, llevándose el trapo a casa, como símbolo de su iniciación en el oficio.
Hoy en día, en ciertas obras se mantiene la tradición de colocar la bandera en la ceremonia de cubrir aguas, y en algunos casos también la fiesta/convite, si bien otros aspectos se han perdido.
Por cierto, lo de poner una bandera en lo alto de la grúa es simplemente una "actualizacion" un poco simbólica y seguramente inconsciente, de esa tradición, ya que las grúas son hoy el punto más alto de las obras, tal y como antiguamente lo fueron las cimbras.