农历是我国独创的历法,相传创始于夏朝,所以又称夏历。辛亥革命以后改用公历(格里历),在民间将公历叫做新历,而将习用的传统历法叫做旧历。又由于传统历法中安排有廿四节气,方便指导农事活动,所以称为农历。
农历以月亮的圆缺周期来定月,又用设置闰月的办法使得年的平均长度接近回归年,所以俗称为阴历月阳历年,是一种阴阳合历。 我国自有文字记载以来,都使用阴阳历,而且从先秦古 六历到清代的时宪历,在几千年中不断改进,共创造了约百种历法,既一脉相承,又不断创新。
阴阳历同时兼顾回归年和朔望月,即以朔望月作为月的基础,而以回归年作为年的基础,一年分12个月,大月30日,小月29日, 每隔两年或三年增加1个月,叫做间月;以朔日作为月首。古代中国及巴比仑等国家都发展阴阳历,这种历法兼备阴历和阳历的优点。 即:日期能反映月亮的圆缺,节气可指示寒暑变更。但缺点是,年的长度变化太大,有时只是354日,有间月的年份却有384日,而且月大小也没有规律。我国在辛亥革命以后改用公历,但在民间和海外华人聚居地区仍然广泛使用这种阴阳历法。
在殷城出土的甲骨文卜辞中,已有关于殷历的记载。当时已发明用干支纪日,年有平闰,月分大小。战国时期制定的古六历中,已经包含节气的概念,而到秦汉之间,更发展成完整的二十四节气系统。
西汉时期的太初历,是我国史志记载最早的完整历法,它已具备了后世历法的各项主要内容,如节气、朔望、闰法、五星、日月食等。太初历把一年平分为二十四气,其中冬至、大寒、雨水……等叫作中气, 小寒、立春、惊……等叫做节气,并规定将不含中气的月份当作闰月。这种以廿四气注历的做法和以无中气之月为闰月的原则,以后都沿用下来。
太初历以后,有过约百种历法,其中有些是很有影响的。南北朝时期天文学家祖冲之创制的大明历,把岁差现象引入历法计算中, 改正了以往历法认为冬至时太阳所在位置固定不变的观念,为古今星象的变化提供了依据。唐朝天文学家一行创制的大衍历,对太阳周年视运动规律有比较正确的认识,知道太阳在冬至前后运动快,夏至前后运动慢。这部历法号称唐历之冠,对日本、朝鲜历法影响很大。元朝天文学家郭守敬所创制的授时历,更是达到我国古代历法的顶峰。它无论在天文实测方面或数学推论方面,都有很高的成就。
清朝初年颁行的时宪历,是以西方的天文数学方法为基础,配合我国传统历法形式上的特点而编制的。现在农历的算法,基本上和时宪历相同。