I assume that the question is about external signals going into the FPGA. Glitches originating inside the FPGA (race conditions) are something else, and should be avoided instead of "deglitched".
It is important to understand the difference between debounce and deglitch for external signals, because there is a simple debounce solution that can't handle glitches!
Debounce = Handles glitches/noise/garbage that only happens when there really is a change going on for the external signal. This is always needed for signals controlled by mechanical switches.
Deglitch = Handles glitches/noise/garbage that can happen at any time. This is related to EMC, not mechanical switches.
It is possible to handle both in the same circuit, but that is more complicated than a debounce-only circuit.
The simplest possible debounce solution is to only sample the input with a time interval longer than the "bounce" time.
If one sample is made during the "garbage" related to a valid transition, it doesn't matter if it is '0' or '1'. The next sample will be correct
(it doesn't matter if we sample the sequence 00011111 or 00001111).
However, "random" glitches can't be handled, because we don't want to sample 000010000.
It can be a good idea to put a deglitch circuit after the simple debounce circuit.