My project is made up of code in the following locations
C:\\Dev\\ProjectA
C:\\Lib\\LibraryB
C:\\Lib\\LibraryC
Presently each of these fold
You can indeed declare B and C subrepos of project A (they will appear as subdirectory, as described in Mercurial Subrepository).
That would improve your release mechanism as it would allow you to:
A and under)B and C under AA with the information about B and C tags in it (any clone of A will be able to get the exact tags of B and C used by A)You can also declare B as a subrepo of D, independently of A. What you make in A (regarding B) will have no consequences for B used in D.