after the struggle Indian Army was divided on the basis of caste
Answers
The Answer is simple Rajputs and Jats were mercenary they were paid to kill, they had been doing since Maurya period to Delhi Sultanat period to Mughal period. They liked to become soldiers as they mostly lived in desert and semi arid land with scarce resources, they had nothing to loose as every single day in desert is difficult for their survival. War was not difficult for them if they got proper bounty. Raja Maan singh of Rajputs was mercenary who looted newly annexed areas of India and then transfer possession of that area to mughals to collect taxes.
According to the accord between Rajputs and Mughals, Rajput army was first line of attack on any area where ever Mughals send them to crush rebellions. Similarly, Jats were also used by rulers as a paid mercenaries for their military adventures.That's why Rajputs and jats have martial status in army and have their own Regiments.
Sikhs recruitment in Indian army started in late 1840s from east side of Sutlej river from Sikh princely states . After anexation of Punjab, Sikh armymen recruitment also started in west side of Punjab. Firstly, Sikhs were choosen as they were minority in India and can suppress both muslims and hindus rebellion without any Religious dilema or remorse. Secondly, the land of Punjab was very fertile and good availability of food was there, which leads to broad and tall men in Punjab. Due to their body structure they were Ideal Soldiers. Thirdly, In Sikh empire army was trained by european officers with most advance artilary and war tactics, it was easy to use well trained soldiers from Sikh empire rather than recruiting new soldiers. Lastly, Punjab was Gateway of India and war zone for thousands of year, every invader first attacked punjab to invade in India, this made Punjabi tough and brave as they have to fight every invader. That's why sikhs and Punjabi had martial status in British era and had their seperate regiments .