十二生肖在秦代还与汉代以后的十二生肖有一定差异,但十二生肖的起源可能要比战国时期早得多。
《世本?作篇》说:“黄帝使羲和作占日……大桡作甲子……”如果黄帝的时代已经出现干支纪时,那么十二生肖的起源或可追溯到中国古史的传说时代。不过,当时可能没有系统的、与后世的十二生肖基本一致的十二属相,但后世十二生肖中的一部分大概已经在孕育之中了。
《史记?五帝本纪》载:“黄帝二十五子,其得姓者十四人。”《国语?晋语四》:“黄帝之子二十五人,其同姓者二人而已。唯青阳与夷鼓,皆为己姓……其同生而异姓者,四母之子,别为十二姓。凡黄帝之子,二十五宗,其得姓者十四人,为十二姓:姬、酉、祁、己、滕、箴、任、荀、僖、?、儇、依是也。”
黄帝后十二姓中,姬姓居于首位。姬姓的周族后来建立周王朝。周族使用周历、周正建子,将子月作为正月。姬姓在十二姓中排在第一位,姬姓的周人又把十二辰中的“子”排在第一位。十二姓中的姬相当于十二辰中的子。
十二姓中的酉,在后来的十二生肖中与鸡对应。
十二姓中的僖和己(巳),经闻一多研究,应是龙、蛇族。
十二姓中的荀,王引之认为应作苟,徐旭生从其说,苟即狗。
十二姓中的儇可能是猿。
这样看来,黄帝后十二姓中,可能有以龙、蛇、猴、狗、鸡为图腾、为姓的。又有重视十二辰中的“子”的姬姓。后来的十二生肖中,鼠排在第一位,与“子”相对应,如果与上古之世的黄帝后十二姓对照,则恰相应于姬姓的位置。
这些情况并不等于生肖已经出现,但十二生肖很可能从这时就开始孕育了。
对照民族学的材料来看,十二兽历法应起源于原始时代的图腾崇拜。
十二生肖不大可能同时出现。人们在很多的图腾中,经过长期的选择,最后选定了十二种动物作为纪时的名称。在选择过程中,很可能有过选定某种动物为生肖,后来又用另一种动物代替它的事。如前边谈到《云梦秦律》中以鹿与午对应,而后来的生肖中只有“午马”而没有“午鹿”,说明不同地区的生肖不完全统一,秦人或许以鹿为十二生肖之一,这样在秦人及后裔,对十二生肖的再选择中,马又取代了鹿。
从黄帝后十二姓中有蛇族(己姓),战国至秦代的生肖中确有巳蛇(虫)等线索推断,十二生肖中的蛇生肖出现得比较早。
系统的十二生肖出现并且稳定下来,不再变动,时为汉代。以后十二生肖广为流行,长盛不衰。