六月二十日,太平军抢渡松林河那天,王应元已经调集各族兵勇二千余人,在河西岸三十里处处设防。石达开见对方人数不多,就决定在河口上下几里路内处抢渡,使敌人防不胜防。
这时松林河到处都是急水漩涡,想涉水过河,简直无法下脚。将士们就手握长竹竿,三五人,七八人联在一起,互相支持,共同涉水。但是河心有道深沟,水急如箭,难以跨越。跌下深沟,撞上乱石,立刻粉身碎骨。
在急流之前,就是平时渡河也危险万分,更何况是敌前抢渡。因此十之七八都冲不过那条深沟,少数过了沟的,冲到对岸已筋疲力尽,都被敌人轻易刺倒。这一天,从早血战到晚,依然过不了河。
六月二十三日,石达开移兵至河口以上十里的磨坊沟抢渡,这里河床较深,河面较窄,没有乱石险滩,可以泅渡。
他挑选了善于泅水的将士数百人,口衔利刃,同时泅渡。对岸防守敌人不多,只要泅渡过去的人能够抢占一段河岸,抢渡就能成功。
看着泅水的将士在河中迅速前进,大家都抱着极大希望。天气虽热,可是河水乃雪山水汇入,冰寒彻骨,游了一段时间,手脚麻木不灵,转眼间就被急流冲走。即使费尽力气,爬上对岸,也因手脚僵硬,行动不便,很快惨遭敌人的毒手。
石达开又命人赶制了几只大船,于夜间放入河道,首尾用铁环扣住,作为浮桥,以此来突破敌人的河防。但河道崎岖,船只上下颠簸,铁环被冲断,抢渡仍然失败。
石达开率领大军向紫打地进军时,知道这一带地瘠民贫,粮草难筹,所以粮草带的足够。他们到达紫打地时,见到王应元的土兵据险抵抗,估计抢渡时要发生战斗,就不把粮草带到紫打地,而保存于紫打地东南五里的马鞍山大营。当太平军全力抢渡大小两河时,土司岭承恩却领兵偷偷来袭击大营。
这个岭承恩从来就是太平军的敌人,当初赖裕新率领中旗部队北上时,岭承恩为了发财,拦路抢劫,在白沙沟设下埋伏,用滚木擂石打死了不少太平军。
他既和太平军结下了难解的仇恨,也就只好一心为清王朝效劳。当石达开全军通过铁宰宰北上后,他就率兵用巨大木石堵塞山间小径,阻断太平军的退路。
太平军初到紫打地时,军锋锐不可当,岭承恩不敢来惹是生非。直到这时太平军抢渡连续失败,兵力锐减,他才大胆来抄后路。为了发财,他始终注视着太平军的马鞍山大营,因为其中存有大量军粮辎重。
6月28日夜间,岭承恩倾巢出动,偷袭马鞍山大营,他们四处放火,趁火打劫。太平军将士为了保护粮草,拼命救火,无暇进行反击,陷于被动,伤亡甚重。
石达开得到消息,大为震动,连忙派来援兵。大营虽然夺回,粮草已经损失,太平军从此因为缺粮而陷入困境。
7月1日,石达开知道再如此下去,大军将会因为缺少粮草不战自溃,唯有趁着尚有些粮草时拼死一战。