We address the problem of generalized category discovery (GCD) that aims to partition a partially labeled collection of images; only a small part of the collection is labeled and the total number of target classes is unknown.To address this generalized image clustering problem, we revisit the mean-shift algorithm, i.e, a classic, powerful technique for mode seeking, and incorporate it into a contrastive representation learning framework. The proposed method, dubbed Contrastive Mean-Shift Learning, encourages the embedding network to learn image representations with better clustering properties by an iterative process of mean-shift and contrastive update.The proposed method introduces no extra learnable parts except the image feature extractor yet outperforms them on six public GCD benchmarks without bells and whistles.