春秋时期,晋国公子重耳逃亡在楚国时,楚王设宴款待他。酒过三巡,楚王乘酒兴对重耳说:“有朝一日,公子返回晋国,将如何报答我?”
重耳想了想,回答道:“如果托大王洪福,我真的能够回晋为君,我一定让晋国与楚国友好相处。如果迫不得已,两国不幸交战,我一定下命令让我国军队退避三舍(一舍合30里)以报大王恩德。”
四年之后,重耳返回晋国,当了国君,史称晋文公。晋文公励精图治,选贤任能,几年后就使晋国强大起来。接着他又建立起三军,命先轸、狐毛、狐偃等人分任三军元帅,准备征战,以称霸中原。
晋国日益强大,南方的楚国也日益强盛。公元前633年,楚国联合陈、蔡等4个小国向宋国发起攻击。宋国向晋求援,晋文公亲率三军增援宋国。
楚军统帅成得臣是个骄傲狂暴的人。晋文公深知成得臣的脾气,决心先激怒他,然后消灭他。成得臣急于寻找战机,晋文公就设计暂不与他交锋。当初与楚王宴饮,晋文公许诺如与楚军交战,一定退避三舍。这一次,晋文公信守诺言,连退三舍(90里),一直退到城濮这个地方才停下来。
其实,晋文公的后撤是早已计划好的了,可以一举三得:一是争取道义上的支持;二是避开强敌的锋芒,激怒成得臣;三是利用城濮的有利地形。
楚将斗勃劝阻成得臣道:“晋文公以一国之君的身份退避我们,给了我们好大的面子,不如借此回师,也可以向楚王交代。不然,战斗还未开始,我们已经输了一场。”
成得臣说:“气可鼓而不可泄。晋军撤退,锐气已失,正可乘胜追击!”于是,挥师直追如故。
晋、楚双方在城濮摆下战场,晋国兵力远不如楚国,因此,晋文公也有些担心。狐偃道:“今日之战,势在必胜,胜则可以称霸诸侯;不胜,退回国内,有黄河天险阻挡,楚国也奈何不了我们!”晋文公因此坚定了决战和取胜的信心。
战斗开始后,晋军下令佯作败退,楚军右军挥师追赶,一阵呐喊声中,胥臣率领战车冲出。胥臣所率战车驾车的马上都披着虎皮,楚军见了,惊惶地乱跑乱叫,胥臣乘机掩杀,楚右军一败涂地。
先轸见胥臣获胜,一面命人骑马拉着树枝向北奔跑,一面派人扮成楚军士兵向成得臣报告:右军已经获胜。成得臣远望晋军向北奔跑,又见烟尘滚滚,于是信以为真。
楚左军统帅斗宜申指挥楚军冲入晋军狐偃阵中,狐偃且战且退,把斗宜申引入埋伏圈,将楚军全歼。先轸故伎重演,又派人向成得臣报告:左军大胜,晋军败逃。
成得臣见左、右二军获胜,亲率中军杀入晋军中军之中。这时,先轸与胥臣、狐偃率晋军上军、下军前来助战,成得臣方知自己的左军、右军已经大败。成得臣拼命突围,又被晋将挡住去路,幸得晋文公及时发出命令,饶成得臣一死以报当年楚王厚待之恩,成得臣才得以逃回本国。
城濮之战后,晋军声威大震,晋文公一跃成为春秋“五霸”之一。