가계와 출신지는 자세히 알 수 없다. 제주도에서 삼별초항쟁을 이끈 김통정(金通精)과 일족이었던 인물로 추정된다.
김준정권 때 야별초지유(夜別抄指諭)가 되었다. 1267년(원종 8) 9월 김준이 자신의 부탁을 거절한 충청도안찰사(忠淸道按察使) 변보(邊保)를 왕에게 아뢰어 유배보내고, 야별초 지유인 김혁정에게 대신하게 하였다.
1270년(원종 11) 6월 장군 배중손(裵仲孫)이 강도조정의 출륙환도(出陸還都)와 원종의 삼별초 해산령에 불복하며 삼별초를 이끌고 대몽항쟁을 선포하였다. 배중손은 왕족 승화후(承化侯) 왕온(王溫)을 새로운 왕으로 삼고 관부(官府)를 세워 독립적인 정부를 구성하였다. 이때 김혁정은 삼별초정부에 가담한 것으로 보인다.
삼별초정부는 강화도에서 진도로 항전의 거점을 옮겨 남해도·거제도·제주도 등 30여 개 섬뿐만 아니라 전라도·경상도 육지에도 세력을 뻗쳤다. 그러나 1271년(원종 12) 5월 고려군 원수 김방경(金方慶)과 몽골군 대장 흔도(忻都)가 이끈 고려와 몽골 연합군의 총공세로 진도가 함락되었다. 이에 삼별초는 다시 김통정(金通精)을 중심으로 그 근거지를 탐라(耽羅: 제주도)로 옮겨 저항을 계속하였다. 이때 김혁정은 탐라에 따라 들어갔다. 김혁정은 김통정의 참모 역할을 하면서 항파두성(缸坡頭城)·환해장성(環海長城) 등을 축조하는데 일익을 담당했을 것으로 생각된다.
1273년(원종 14) 4월 28일 김방경·흔도·홍다구(洪茶丘) 등이 전라도 배 160척과 수륙병(水陸兵) 1만여 명으로 탐라를 공격하여 항파두성을 함락시켰다. 함락 직전에 김통정·김혁정 등은 한라산에 피신하여 항전을 지속하였다. 같은 해 윤6월 김혁정은 이기(李奇) 등 70여 인과 함께 탐라유진장군(耽羅留鎭將軍) 송보연(宋甫演)에 의해 체포되어 홍다구에게 죽임을 당하였다. 이로써 삼별초항쟁은 종식되었으며 원 간섭 하에 제주에 탐라총관부(耽羅摠管府)가 두어졌다.