The block gas limit works in a different way than the transaction gas limit.
The rule is that a block may not have more gas used than the limit. If a transaction would go over that limit, it just can't be included in the first place. For this reason, the default mining algorithm basically runs transactions in order of gas price, and reverts any that over the limit.
For the developer, a low gas block limit just means large transactions don't happen. Nothing is lost if a transaction doesn't fit, and it may very well be in a near-future block (short spam attacks). The concern should be if a transaction is time-sensitive (such as a publication of a state channel's state), at which the simplest response is simply to wait longer.