Bhishma (born Devavrata) took a vow of celibacy and not to attack women as part of his terrible oath to remain loyal to his father's throne and facilitate Satyavati's marriage to Shantanu. This vow became crucial in the Kurukshetra war when he refused to fight against Shikhandi. Karna, Shalya, and Yudhishthira did not take this specific vow.