重耳是晋献公的儿子。晋献公有个宠爱的妃子叫骊姬。骊姬想立他自己的儿子奚齐做太子,就耍阴谋杀害了原来的太子申生,还想再施诡计,除掉公子重耳和晋献公的另一个儿子夷吾。重耳和夷吾听到这风声,都赶紧逃到国外避难。重耳在流亡中到过很多国家。他到楚国的时候,楚成王把他当作贵宾来接待。在一次宴会上,楚成王问重耳:“要是公子回到晋国,作了国君,怎样报答我呢?”重耳沉吟了一会儿,说:“我想,如果我能回到晋国,当上国君,将来晋楚两国万一发生战争,我一定叫晋军‘退避三舍’(古时候一舍为30里,三舍就是90里)。要是楚军还不肯罢兵,我只好左手拿着鞭子和弓,右肩背着箭袋,和您较量一番了。”(原文见《左传·僖公二十三年》)
城濮之战是春秋时期晋楚两国长期争霸战争中具有决定意义的一次战争,是充分发挥主观能动作用、以少击众、以弱胜强的一个典型范例。“退避三舍”这个成语典故,就产生在这次战争中,最早说这句话的人,就是晋国的公子重耳。
重耳在外流亡了19年,终于回到晋国,当了国君,就是晋文公。晋文公经过长期流亡生活的磨炼,增长了知识和才干,即位后用心治理国家,晋国也就很快强盛起来。他决心向外扩张,争当诸侯的霸主。当初晋文公想当霸主,首先就和实力强大的楚国发生冲突,因为楚成王要向外扩张,也想当霸主。