Это значит "начать сражаться с тем, кто напал". Ведь если на вас напали, вы можете убежать или просто сдаться. А вот если вы начинаете защищаться или нападаете в ответ, это и значит "принять бой", "принять сражение".
В старину для того, чтобы сражение случилось, нужны были долгие приготовления обеих армий: следовало найти подходящую площадку, выстроить на ней полки, сделать земляные укрепления и т. д. Понятно, что в таких условиях полноценное сражение могло случиться только там и тогда, где его желали обе противоборствующие стороны. Если одна из них приготовилась к стражению, а другая считала место неудачным для себя, она могла сманеврировать и отступить, не приняв сражения.
Принять сражение - это значит согласиться с предложенными противником условиями биться здесь и сейчас.
ответить на атаку