十二生肖紀年始於東漢時期,《北史·宇文護傳》中,記載了宇文護的母親寫給他的壹封信,信中說:“昔在武川鎮生汝兄弟,大者屬鼠,次者屬兔,汝身屬蛇”。表明當時民間已有12生肖的用法了。
我國古籍中記載,古代的中原地區,最初使用的是“幹支紀年法”,即用10個天幹符號(甲、乙、丙、丁、戊(wù)、己、庚(gēng)、辛、壬(rén)、癸(guǐ)和12個地支符號(子 、醜、寅、卯、辰、巳(sì)、午、未、申、酉、戌、亥)相配合來紀年。同時,也有采用地支配合十二種動物來簡單紀年。到隋朝時中原歷法傳至中國西北地區的遊牧民族,他們在歷法的紀年上僅吸收了十二種動物紀年法。因此才有《唐書》中記載:“黠戛斯國以十二物紀年,如歲在寅,則曰虎年”。另外,《宋史·吐蕃傳》中也記載說,吐蕃首領在敘事時,以物紀年,所謂“道舊事則數十二辰屬日,兔年如此,馬年如此”。正像清代趙翼在《陔余叢考》中指出的那樣,“蓋北俗初無所謂子醜寅卯之十二辰,但以鼠牛虎兔之類分紀歲時,浸尋流傳於中國,遂相沿不廢耳”。這種關於12生肖來歷的解釋,已經被許多人認可。
關於12生肖來歷的說法還有:洪巽的《陽谷漫錄》中說,12地支中位居奇數者,以動物的指或蹄也為奇數相配,如子位居首位,與它相配的鼠為5指,地支中居偶數位的,則取相屬之偶數以為名,如牛與醜相配,為4爪。葉世傑在《草木子》中,把12生肖的來歷解釋為:術家以12肖配12辰,每肖各有不足之形焉,如鼠無齒、牛無牙、虎無脾、兔無唇、龍無耳、蛇無足、馬無膽、羊無瞳、猴無臀、雞無腎、犬無胃、豬無筋、人則無不足”。
其它的說法還有種種。諸如:黃帝要選拔12種動物在天上按時值班。通過競賽而選中了鼠 、牛、虎等12種動物;12生肖來源於原始社會壹些氏族的圖騰崇拜,按某次集會時各部落的強弱劃分;12生肖可能是從天竺引進的;或28個星宿分布周天,以值12個時辰。每個星宿都以壹種動物命名。從每個時辰值班的動物中挑選某種常見的作某壹年的代稱等等,不壹而足。
盡管人們不能確定12生肖的確切來歷,但因為它的通俗、方便又具有趣味性,所以壹直沿用至今,成為古人留給我們的壹種仍有實用價值的寶貴遺產。