1.6 KiB
Venus
Venus is a work-in-progress VCS built to be fast and efficient. Tired of waiting ages for Git to "resolve deltas"(a process vital to the way git works)? Use Venus(when it's functional, of course)!
Glossary
mod: Equivalent to commits in other VCS'. object: A file storing differences from the previous mod.
.venus structure
.venus/objects: Object files(specified in OBJECTS.md) with the extension of .venus-object
. They are named after the SHA512 hash stored in the object truncated to 16 characters and then the hexadecimal unix timestamp in nanoseconds of the object's creation. For example, cf83e1357eefb8bd182e06194db125d7.venus-object
would be an object file with completely empty content created on Tuesday, March 18, 2025 at 10:26:52 PM GMT. This string of hexadecimal characters is also used to identify the mod.
.venus/branches: Branch files(specified in BRANCHES.md) with the extension of .venus-branch
. They are named after the branch name(i.e. main.venus-branch
), meaning that branch names have to be unique.
.venus/mods: Mods files(specified in MODS.md) with the extension of .venus-mod
. They are named with the SHA512 hash of them truncated to 16 characters and concatenated to the unix timestamp in hex of their creation date.
.venus/mods/NEW_MOD.venus-mod: A file similar to git's COMMIT_MSG
file. Staging file while the user is creating a new mod.
.venus/active/BRANCH: A file containing only the active branch name.
.venus/active/MOD: A file containing only the active module of the module file name without the extension.