In a raster image there is no concept of an object, as there is in vector graphics. Operations are not done by recording a definition of actions on a particular entity.
Actually, if there is an object at all it is either the image in total, or an individual pixel.
A pixel in the image is changed in some way, and editors can record this in history, usually grouped by the application of some tool or other. What is recorded in history in all the common raster programs (I believe: I haven't used them all) is the state of changed pixels in that grouping. To be able to meaningfully pull out a past edit would require that the change to a pixel is recorded, or computed backwards. That's possible but actually less helpful than it might seem, as a pixel changed more than once for different reasons (e.g. colour temperature, opacity, shading) is not always going to look right by just deducting a single operation. The pixel arrived at its current state by a process that might only be worked backwards in sequence; changing the sequence could change the final value.
GIMP enables a level of 'objectness' by allowing layers, paths, and channels. Using these (particularly layers, and layer groups), even to what might seem an excessive way, is often the way to go when creating a raster graphic. In time, one learns when to use a new layer, when not to, and when to merge layers down (or occasionally up, if you have the FX Foundary extension) before applying a change to what you have so far.
Using layers a lot also enables you to duplicate a layer, and keep it hidden as a backup in case.. something I use a lot!
Then you can play around with layers by hiding or revealing them, experimenting with various versions of the same 'object' to see what it looks like. Then save the GIMP file, still fully editable, before finally flattening all the layers you want for final output.