The Create Job dialog already signals an error if you try to create a job from a project which is not hosted in a
supported VCS. It should also perhaps issue a warning in case the project is in VCS but has local modifications, since a
new user might not realize that these will not be reflected in the build unless and until committed.
Not sure offhand if there is a generic API to query the versioning subsystem whether the project is modified.
For Hg, this could also mean that the project is unmodified but has outstanding unpushed changesets. So it gets tricky.