Pure MSK has a linear phase trajectory from symbol to symbol over 90 degrees (resulting in the minimum frequency separation where the frequencies over a symbol duration are still orthogonal) while GMSK the phase trajectory is the integration of a Gaussian pulse resulting in no abrupt transitions but still transitions from 0 to 90 degrees over a symbol duration (for full response signaling). The abrupt transitions in MSK lead to higher frequency sidelobes which is less desirable when bandwidth and spectral occupancy is a premium.
Since instantaneous frequency is the time derivative of phase, the frequency vs time for GMSK is a series of Gaussian pulses, and thus we can implement a GMSK Modulator using a filter with a Gaussian impulse response at the control voltage input to an VCO (voltage controlled oscillator), or completely digitally with the Frequency Control Word input to an NCO (numerically controlled oscillator) and each symbol as an impulse. Since the phase transitions over 90 degrees, implementation structures may also be similar to QPSK modulators with half a symbol offset to assist in keeping the trajectory on the unit circle as the state transitions between the 4 quadrature states (0°, 90°, 180°, 270°). What is important to all implementations (MSK and GMSK) is that the amplitude is always constant and it is only the phase that changes. For MSK the phase changes at a constant rate (and then may abruptly reverse direction) while in GMSK the phase starts out slowly, increases in rate of change with maximum rate of change at mid symbol and then slowly decreases as it reaches the next state thus eliminating the abrupt change if the direction is to reverse.
This may be clearer by observing the frequency versus time and phase versus time waveforms shown below for both MSK and GMSK for "Full Response Signaling" which is when the impulse response for each symbol is complete over the duration of one symbol period.
With "Partial Response Signaling" we allow the symbols to overlap (planned inter-symbol interference) allowing us to squeeze more data in less time (higher bandwidth efficiency) at the expense of receiver complexity to unravel all that inter-symbol interference, optimally with a Viterbi decoder or simplified with minor loss using the Laurent Decomposition.
For further details also see this post.