起初,周成王封其弟叔虞於唐,號唐叔,成為周朝諸侯國晉國始祖。唐叔虞,亦稱叔虞、太叔,姬姓,名虞,字子於,是周武王姬發的兒子,周成王姬誦的同母弟弟;母親王后邑姜,是齊國開國君主齊太公呂尚(即姜子牙)的女兒。
箕子看到唐叔剛剛被分封時,說「他的後代一定繁榮昌盛」。唐叔虞死後,其子燮(燮父)繼位。燮繼位後徙居晉水之旁,改國號為晉,是為晉侯燮。春秋初期,晉昭侯分封叔父成師於曲沃,造成分裂局面。到晉文公的祖父武公,史稱曲沃武公,以宗室的身份統一了晉國。晉文公的父親獻公,繼續兼併了許多小國,使晉國成為汾河流域強大的諸侯之國,給晉文公稱霸打下了基礎。
晉文公勤王
《史記.周本紀》記載,周惠王二十五年,惠王駕崩,其子周襄王姬鄭即位。周襄王十七年,襄王向晉國緊急救助,晉王公接受王命,而誅殺子帶。襄王於是賜晉言語公紅色和黑色的弓箭,封晉文公為伯,將河南之地賜給晉。襄王二十年,晉文公請襄王參加自己召集的會盟,襄王在河陽、踐土參加了會盟,諸侯退去之後,在史書上將此事寫成「天子到河南打獵了」。
周惠王死後由周襄王繼位(西元前652年∼前619年在位)。襄王生母早死,其後母惠後因周惠王寵愛而一直想扶立她的親生兒子叔帶。周襄王即位後,一直和王子帶不和睦。前636年,王子帶欲圖篡位,以狄人攻周,大敗周師,周襄王逃到鄭國,並向諸侯求救。
眼見秦穆公大軍已經在黃河邊準備要迎接襄王,晉文公重耳(公元前697∼628年)因為初回晉國而忙於重建國政,又擔心出兵將導致國內政局不穩,在迎與不迎襄王之間舉棋不定。這時他的謀臣也是舅舅狐偃勸進,於是文公為此請卜偃分別以卜、筮來決疑,結果都是大吉。
這個故事記載在《左傳.僖公二十五年》:
秦穆公駐軍於河上,準備迎接周襄王。狐偃告訴晉文公說:「君侯要成就霸業,與其求諸侯不如效勞周王(「求諸侯,莫如勤王」),這樣諸侯就會信任你,而且合於大義。繼承晉文侯當年擁立周平王的偉業,將您的威信傳播於諸侯國,現在就是機會了。」
於是晉文公請卜偃卜問,龜卜結果說:「吉利,得到的是黃帝戰於阪泉的兆像。」晉文公說:「我怎麼擔當得起?」卜偃回答說:「周禮還沒改,當今的王,就是古代的帝。」卜偃的意思是說,這裡所說的王是「周襄王」,不是晉侯您。這是因為周武王登天子位之後「其後世貶帝號,號為王」(《史記.殷本紀》)。周天子為尊古而自貶一級只稱「王」,周朝的「王」相當於「帝」。卜偃說黃帝戰於阪泉的預兆應在周襄王和王子帶的戰爭上,以按周朝的禮制來說,周襄王和黃帝相當的。
晉文公又說:「筮一卦吧。」於是筮了一卦,得到《大有》變成《睽》的卦象,卜偃說:「吉利,這是‘公用享於天子’的卦象。戰勝之後而得到周王的款宴,還有更吉的嗎?而且這一卦,干天變兌澤而遇離日照耀,天子降低其尊貴之身而真心歡迎文公您,這不也很好嗎。大有離開睽孤之後又歸來,這也是周王得以回到其王所。」
晉文公於是辭退秦軍,順流而下。三月十九日,軍隊駐紮在陽樊,右翼部隊包圍溫地,左翼部隊迎接周襄王。夏季四月初三日,襄王進入王城。在溫地抓了太叔,把他殺死在隰城。初四日,晉文公朝覲周襄王。周襄王用甜酒招待晉文公,又讓晉文公向自己回敬酒。晉文公請求死後掘墓道安葬,周襄王沒有允許,說:「這是王室的規章。還沒有取代周室而有兩個天子的行為,這也是叔父您所厭惡的。」於是賜給晉文公陽樊、溫、原、攢茅的土地。晉國在這時候才開闢了南陽的疆土。
陽樊人不服,晉國軍隊包圍了陽樊。倉葛是陽樊人的首領,他大喊說:「德行用來安撫中原國家的,兵刑用來威懾四方夷狄的,你們竟然圍攻起中國的陽樊城,這樣幹,無怪我們不敢降服了。這裡誰不是周天子的親戚,難道可以俘虜他們嗎?」於是就放百姓出城了,聽任他們遷居,也就是說晉侯只取土地,不強迫老百姓留下來。
原人也不服。冬季,晉文公率軍包圍原國,命令攜帶三天的糧食,意思是只圍攻三天。到了三天原國不肯投降,就下令離開。間諜從城裡出來,說:「原國準備投降了。」軍官說:「請等待一下。」晉文公說:「信用,是國家的寶貝,百姓靠它庇護。得到原國而失去信用,用什麼庇護百姓?所損失的東西更多。」於是退兵三十里,原國投降。晉文公把原伯貫遷到冀地。任命趙衰作為原地的地方官,狐溱作為溫地的地方官。
晉文公曾向寺人勃鞮詢問鎮守原地的人選。勃鞮回答說:「以前趙衰用壺盛飲料並攜帶了食物跟隨您,他一個人走在小道上,餓了也不去吃它。」所以晉文公讓趙衰作為原地的地方官。
大蒐(閱兵)以示禮
晉文公勤王以後,充實了力量,開拓了疆土。兩年後,公元633年,楚國和宋國發生衝突,宋向晉求救。晉文公在被廬舉行了一次大規模的軍事檢閱。
楚成王準備包圍宋國,派遣子文在睽地演習作戰,一早上就完事,沒有殺一個人。子玉又在蒍地演習作戰,一天才完事,鞭打七個人,用箭穿三個人的耳朵。元老們都祝賀子文。子文招待他們喝酒。蒍賈年紀還小,遲到了,不祝賀。子文問他,回答說:「不知道要祝賀什麼。您把政權傳給子玉,說‘為了安定國家’,安定於內而失敗於外,所得到的有多少?子玉的對外作戰失敗,是由於您的推舉。推舉而使國家失敗,有什麼可賀的呢?子玉剛愎無禮,不能讓他治理軍民,率領的兵車超過三百輛,恐怕就不能回來了。如果回來,再祝賀,有什麼晚呢?」
冬季,楚成王和諸侯包圍宋國。宋國的公孫固到晉國報告緊急情況。先軫說:「報答施舍,救援患難,取得威望,成就霸業,就在這裡了。」狐偃說:「楚國剛剛得到曹國,又新近和衛國結為婚姻之國,如果攻打曹、衛兩國,楚國必定救援,那麼齊國和宋國就可以免於被攻了。」晉國因此而在被廬閱兵,建立三個軍。
商量元帥的人選。趙衰說:「郤縠可以。我屢次聽到他的話,喜愛禮樂而重視《詩》、《書》。《詩》、《書》,是道義的府庫;禮樂,是道德的表率;道德禮義,是利益的基礎。《夏書》說:‘有益的話全部採納,考察效果加以試驗,如果成功,用車馬衣服作為酬勞。’您不妨試一下!」於是晉國派郤縠率領中軍,郤溱輔助他。派狐偃率領上軍,狐偃讓給狐毛而自己輔助他。任命趙衰為卿,趙衰讓給欒枝、先軫。命欒枝率領下軍,先軫輔助他。荀林父駕御戰車,魏犫作為車右。
《左傳》說,晉文公一回到晉國,就教化百姓,過了兩年,就想使用他們。子犯說:「百姓還不知道道義,還沒能各安其位。」晉文公就離開晉國去安定周襄王的君位,回國後致力於便利百姓,百姓就各安於他們的生活了。又打算使用他們,子犯說:「百姓還不知道信用,還不能十分明白信用的作用。」就攻打原國來讓百姓看到信用,百姓做買賣不求暴利,明碼實價,各無貪心。晉文公說:「行了嗎?」子犯說:「百姓還不知道禮儀,沒有產生他們的恭敬。」由此舉行盛大閱兵來讓百姓看到禮儀(「大蒐以示之禮」),建立執秩的官職來規定主管官員的職責。等到百姓看到事情就能明辨是非,然後才使用他們。趕走谷地的駐軍,解除宋國的包圍,一次戰爭就稱霸諸侯,這都是文公的教化。
前633年(周襄王二十年),宋國都城商丘被楚軍包圍。前632年初,晉文公率兵救宋,為報答楚國在他流亡國外時楚國的款待,下令軍隊退避三舍(九十里),在衛國的城濮(今山東濮縣南)大敗楚軍。晉文公主持踐土之盟,成為名副其實的霸主。