Lets consider i have a lambda function , i have two versions of it v1 and v2 and both version are published If in any case i want to make code changes in v1 can i go directly to v1 and make code changes and publish the same version again?
Sadly you can't. Published lambda versions are immutable:
You can change the function code and settings only on the unpublished version of a function.
If your version is already publish, any changes must be made to a new version.