Is it common practice in the software development/engineering profession for engineering change orders (ECOs) to be used for or in conjunction with software version control? Is this a good idea? Are there any pros or cons?
AFAIK what you call "ECO" in electrical engineering is called a "change request" in software development. Many development teams use issue or bug tracking systems to manage their change requests in form of "tickets", and I am pretty sure a certain percentage of those teams add the issue ID, or bug ID, or ticket number, to the commit messages when committing to version control (see here for example). There are even some bug trackers with version control integration (see this older SO post), or fully integrated products like Microsoft's TFS.
So the answer to your question "is it common practice" is, yes, to some degree. Not 100% popular, not necessary for everyone or every team, but some find it helpful and use it.