古人观察到了天象的运动规律,上古时代已采用干支纪元,据明代史学家万民英根据我国古文献明文记载确定干支为天皇氏时发明,在其著作《三命通会》中有详细记载。干支的发明标志着最原始的历法出现,配合数字用来计算年岁。夏以后,出现多轨制历法,亦即各诸侯和各地部落还有自己的地方历法;秦朝为中国历史上最后一个“以闰月定四时成岁”的历法。汉朝初期开始中国历法出现了大转折,全国统一历法,历法也成为了一门较为独立的科学技术。汉武帝责成邓平、唐都、落下闳等人议造《汉历》,汉武帝元封七年历成。是年五月改年号为太初(即为太初元年),并颁布实施这套《汉历》,后人以此称呼此历为《太初历》,之后刘歆作《三统历》,这两历的重要特点是年岁合一,一年的整数天数是365天,不再是之前历法的366天。以“加差法”替代之前的“减差法”以调整时差,年岁周期起始相当固定,用数学计算就能确定闰月,用不着“考定星历,建立五行”,至此,阴阳五行基本上退出了历法。之后中国历朝历代所颁布的历法,均与汉历(太初历)大同小异。由此知当下使用的这套历法规则基本沿袭汉代的汉历(太初历),而与汉代以前的夏历等是有较大差异的。中国现存最早的历书是《夏小正》,以后历法不断发展。中国现行农历沿用自明末《时宪历》脱胎的清朝《西洋新法历书》,是四百多年前的由汤若望主导的欧洲耶稣会教士和中国第一批天主教徒合力编撰的。现代农历的基础是来自明朝末年的《时宪历》,之前明代通行的历法为《大统历》,实际上是将元代郭守敬的《授时历》改个名字沿用,此历法到明末,已经与实际气象、天文有误差,尤其对日月食推算的误差更明显。现行的农历“二十四节气”也来自于洋教士订立的“定气法”,与“千年文化传统”的“二十四节气”只分享同一个名字,确定方法和日期完全不同。在《时宪历》的中国历法中,“节气”是将冬至与下一个冬至之间的日期平均分成十二等分,称为“中气”。再把相邻“中气”之间的日期等分,称为“节气”。平均每月有一个“中气”与一个“节气”,统称为“二十四节气”,这种确定方法被称为“平气法”,每“节气”之间日期相同。而从西洋教士定《时宪历》之后直至今日的“农历”,中国的“二十四节气”是根据太阳在回归黄道上的位置来定的,即在一个为360度圆周的“黄道”(一年当中太阳在天球上的视路径)上,以春分点为0度起点,太阳在黄道上每运行15度为一个“节气”,每“节气”时间不均等,称为“定气法”。所以现在的中国“农历”与《时宪历》之前中国历法的“二十四节气”只分享同一个名字,确定方法和日期完全不同。明清易代后,官方将还没来得及通行的《时宪历》删改至103卷,并由清朝顺治皇帝将其更名为《西洋新法历书》,于顺治2年(1645年)颁行。康熙八年(1669年)后至清亡,中国的历法一直大体沿用汤若望所订新历,延续至今,就是俗称的“农历”。中华民国成立,采用西历,纪年采用西历或民国纪年并用,并欲废除中国传统历。中华人民共和国在1949年成立时,继续使用西历,以公元纪年;但保留中国传统历——农历的使用,并于公元2017年颁布了国家标准《农历的编算和颁行》。现行农历由中国科学院紫金山天文台负责计算,属于官方历书《中国天文年历》的组成部分。