早在周代,云南就与中原有各种联系。战国时期,楚国将军庄跻为与秦国争夺巴、黔中地区,率大军进入滇池地区。以兵威平定滇部落,将其隶属楚国,正打算归报,秦国已击夺巴、黔中,道塞不通。庄跻只好回到滇池地区,“以其众王滇
,变服,从其俗,以长之”[1]。这是内地人马大规模进入云南的最早纪录,但是他们都融合入当地族群之中。
汉武帝元封二年(公元前109年),在今云南设置益州郡,统领24县,其地域与今天的云南大体相当。在设置郡县的同时,开始在云南“屯戍”。在屯田戍守的过程,汉族移民也陆续进入云南。两汉时期,多次对云南用兵,在战争中,也有部分兵士役夫流散不归而留在云南;内地的灾荒、动乱等导致不少人逃难或流窜到云南。内地到云南的汉人在云南安家立业,人口不断增加。到东汉时期,云南的户籍有了“夷”、“汉”的分别。汉族移民中出现了拥有地方武装的当权派,即“大姓”。汉人移民与当地的夷人从“对立”、“冲突”逐渐走向接近、融合。到东汉末年,夷汉之间的区别消失,相互融为一体[2]。
尽管迁移到云南的汉人已融合到当地的夷人之中,但他们始终没有忘记自己的祖先是汉人。他们保持着“汉姓”,如王、李、赵、董、杨、段等,他们还“自云其先本汉人”[3]。
唐代,随着对云南统治的深入与加强,进入云南的汉人也不断增多。主要是派到云南来戍守的兵士。唐廷于麟德元年(公元664年)在云南设置姚州(在今云南大姚、姚安),每年差募500兵丁镇守。直到天宝战争,姚州撤销,约80年,先后有4万余人到此戍守。他们轮流来云南戍边,期满调回,其中必有不少人流落在云南。天宝战争期间,唐朝在云南损兵折将20余万,其中也有不少汉人流落云南。
南诏时期,多次出兵骚扰嶲州、西川、安南、邕管等地,先后掳掠汉人10余万。大理时期,汉人也有流落到云南的,但数量不多。
但无论是唐朝派遣来云南戍守不归的汉人,还是因战争流落云南不归的汉人,或是被掳掠到云南的汉人,他们都逐渐融合到白族之中。
蒙古宪宗三年(公元1253年),蒙古军队进入云南,元朝至元十一年(1274年)建立云南行省。蒙古军队进入云南后,使云南的居民成分发生了重大改变。首先是中断了云南“白族化”的进程。白族不再是云南的统治民族,虽然云南各地都有白族,但是其聚居区已限于洱海区域。其次是蒙古人、回回人、维吾尔人、契丹人、汉人大量进入云南。由于元朝征缅,从内地调集大量军队到云南屯戍,汉人在云南的数量不断增加,汉文化也在云南广泛传播。但是云南依然是“夷多汉少”,这种情况到明代才发生根本转变。
公元1368年,朱元璋推翻元王朝的统治,建立明王朝,建元洪武。洪武十四年(公元1381年),朱元璋命傅友德、蓝玉、沐英率兵取云南。洪武十五年,进兵大理,俘获大理路总管段氏,鹤庆路总管高氏出降。
明王朝为巩固在云南的统治,在云南设置卫所,并进行大规模的屯田开发。洪武十五年,朱元璋谕傅友德等:“云南既平,留江西、浙江、湖南四部司兵守之,控制要害”[4]。卫所屯戍有一套完整的制度,其主要特点是:有固定的戍守和防卫区域;军皆有家世;军户世代为军,既入军籍,不许更改,更不许逃亡;军户屯田自给。卫所制度推行的结果是大量的汉人迁移到云南。云南卫所的数字,从明代初年以来,时有变动,大抵,洪武年间设十六处,正统以后增为二十五处,嘉靖以后为三十六处,万历年间为四十处。明代云南都司所领共133个千户所,每个千户所领官兵1120人。如果每个千户所都是足额,则驻云南的卫军当有148960人。因为军士都要有家室,同住卫所,所以,应该是148960户。虽然军丁正额有限定,而舍丁、军余则各自另立门户,不断增加。因之,通过军事屯田进入云南的汉族移民的数量当比正式的卫所军户多得多。明代初年,云南户口只有59576户,经200多年的发展,到万历初年已增至471048户。其中军户总计335426户,占71%强。开展军事屯田的同时,还实行民间屯田。明代还将罪犯贬谪充军到云南,这是明代内地汉人移民云南的一个特点。有明一代,移民至滇的记录不绝于史。虽然有的数字不见得准确,但民间移民至滇屯垦的不下百余万户。到明代后期,各种类型的汉族移民的总数已达300万左右[5]。由于云南许多地区是没有户籍统计的“蛮夷”人户,所以还不能确定外来的汉族移民与当地民族的比例。但有一点则是可以肯定的,汉族移民的数量已完全超过了土著的“蛮夷”人户,云南“夷多汉少”的状况到明代有了根本改变。汉族人户不仅超过任何一个土著民族,而且超过了所有土著民族的总和,成为云南居民的多数民族;云南的土著民族则从多数变为少数。