孫武根據當時戰爭失利的不同情況歸納為六類,即“兵有六敗”——走、弛、陷、崩、亂、北。
太平天國於1856年夏發生了楊、韋內訌,翼王石達開回京,責韋昌輝不該濫殺,韋昌輝怒,欲殺石達開,石達開縋城而逃,全家遭誅。石達開在安慶統軍聲討,天王與朝臣殺了韋昌輝,全朝都舉石達開總理政務,但天王猜忌異姓,並有圖害之意,石達開不安,率眾出京,於1857年6月2日,由銅井(今安徽馬鞍山市東北)渡江入皖,從此脫離太平天國中央。石達開出走後,輾轉於南方各省,屢遭清軍所敗,隊伍越打越少,到1863年已由十萬多人減至三四萬人。在這種形勢下,石達開欲打進四川,尋求一塊立足之地。
清將駱秉章知石達開前來,乃調重慶鎮總兵唐友耕軍分別防守大渡河的十多個渡口,後駐紮哇哇營至下壩等處。又令署雅州府知府蔡步鍾募勇駐紮宰羊溪至安慶壩等處,雲南提督胡中和分散在化林坪至瓦斯溝一帶,以為聲援,副將謝國泰布防虎崗,守通向打箭爐之路。除此之外,還用金錢收買地方勢力,許諾擊敗石達開軍,所有資財悉聽收取。
1863年5月1日,石達開由花園津至德昌、馬道子(今四川西昌縣),得知大渡河諸渡口都有清軍及地方勢力把守,就以重幣送鬆林地各土司,土司應允讓道,石達開信之不疑。石達開統軍三四萬人,繞冕寧、越(今作越西),從西邊小路直上,於5月14日進抵王應元所轄的紫打地(今安順場東)。其他兩山壁立,隘口險要,易進難退,前阻大渡河,左有鬆林小河,右有老鴉漩河。
石達開入紫打地後,沒有立即渡河,據說是石達開當夜誕生一子,乃通令將卒曰:“孤今履險如夷,又複弄璋生香,睹此山碧水清,願與諸卿玩景娛醉。”部屬均稽首稱賀,於是傳令犒賞,休養三日。至5月18日,清軍兵勇雲集,鬆林小河索橋也被清兵拆除。石達開欲退出險隘,遣人回視隘口,土司已斷千年古木六大株,偃地塞路,且有土司兵把守,難以退出。欲覓兩旁小徑,又皆千仞絕壁,無從攀登。石達開令趕造船筏數十隻,於5月21日拖至大渡河,每船載壯士數十人,用擋牌護身,拚命搶渡,南岸大軍鼓噪助勢,聲震山穀。北岸清軍槍炮齊發,搶渡之軍多被擊中落水,筏上火藥引燃船筏同時炸裂,其漂至下遊者,皆被打死。石達開知大渡河難渡,欲搶渡鬆林小河,由瀘定橋直趨天全,而清將王應元扼河相抗,前後損失兵勇數千人。5月24日,土司兵由後路抄至新場一帶,節節相逼。5月29日,土司兵夜襲馬鞍山,從上壓下,石達開軍猝不及防,傷亡數百人,馬鞍山失守,糧道遂絕。石達開乃縛書於箭射投王應元,許贈良馬兩匹,白銀千兩,請讓其道,王應元不允,石達開又以金銀請土司嶺承恩緩攻,而嶺承恩反而急攻。石達開知陷入絕地,憤極而怒鬥,於6月3日三更盡斬向導二百餘人祭旗,督全軍分攻大渡河、鬆林小河,每數十人乘一小筏,人皆擋牌護身,披發銜刃,挺戈怒立,皆在清軍槍炮轟擊中隨波而沒,岸上之軍也有被擊傷者。糧食既盡,殺馬而食,繼以桑葉草根充饑,6月9日,石達開以200餘人往河岸詐降誘敵,唐友耕等開槍放炮,石達開親督眾軍,再以船筏搶渡,仍被擊沉。都司謝國泰及王應元等率兵渡過鬆林小河,參將楊應剛及嶺承恩從馬鞍山壓下,兩路齊進,直撲紫打地。石達開營壘全被焚毀,喪軍數千,山徑險仄,自相擁擠,兩麵受敵,槍炮如雨,土司兵又登上山巔用木石滾擊,石達開軍墜岸落水者萬餘,輜重盡失。石達開率餘部七八千人走至老鴉漩,又為土司兵所阻,進退無路,其妻妾五人攜幼子二人攜手投河,跟隨其征戰多年的老部下自溺而死的也不少。此時清將楊應剛於洗馬姑豎立“投誠免死”大旗相誘,石達開忽思以一死保全餘部生命,致書駱秉章表達此意。都司王鬆林赴石達開營中誘降,指天發誓許以不死,眾將欲殺王鬆林,石達開止之。6月13日,石達開偕宰輔曾仕和、中丞黃再忠等隨王鬆林至洗馬姑清營,遂被執。唐友耕等將石達開餘部官兵2000餘人安置於大樹堡(今漢源縣對岸),知府蔡步鍾等密派各營於6月19日過河,即於當夜以火箭為號,會合土司兵,將大樹堡太平軍屠殺盡淨,偶有逃出者,也被土司兵截殺。石達開等6月25日被押到成都府(今成都市)殺害。