commit¶
vb commit|ci [OPTIONS] [FILE ...]
Description¶
Create a new check-in containing all of the changes in the current check-out. All changes are committed unless some subset of files is specified on the command line, in which case only the named files become part of the new check-in.
You will be prompted to enter a check-in comment unless the comment
has been specified on the command-line using -m or -M. The
text editor used is determined by the editor”editor” setting, or by the
VISUAL or EDITOR environment variables. Commit message text is
interpreted as vb-wiki format. Potentially misformatted check-in
comment text is detected and reported unless the --no-verify-comment
option is used.
The --branch option followed by a branch name causes the new
check-in to be placed in a newly-created branch with name specified.
A check-in is not permitted to fork unless the --allow-fork option
appears. An empty check-in (i.e. with nothing changed) is not
allowed unless the --allow-empty option appears. A check-in may not
be older than its ancestor unless the --allow-older option appears.
If any files in the check-in appear to contain unresolved merge
conflicts, the check-in will not be allowed unless the
--allow-conflict option is present. In addition, the entire
check-in process may be aborted if a file contains content that
appears to be binary, Unicode text, or text with CR/LF line endings
unless the interactive user chooses to proceed. If there is no
interactive user or these warnings should be skipped for some other
reason, the --no-warnings option may be used. A check-in is not
allowed against a closed leaf.
The --private option creates a private check-in that is never synced.
Children of private check-ins are automatically private.
The --tag option applies the symbolic tag name to the check-in.
The --tag option can be repeated to assign multiple tags to a check-in.
For example: ... --tag release --tag version-1.2.3 ...
Options¶
- --allow-conflict¶
Allow unresolved merge conflicts
- --allow-empty¶
Allow a commit with no changes
- --allow-fork¶
Allow the commit to fork
- --allow-older¶
Allow a commit older than its ancestor
- --baseline¶
Use a baseline manifest in the commit process
- --bgcolor COLOR¶
Apply COLOR to this one check-in only
- --branch NEW-BRANCH-NAME¶
Check in to this new branch
- --branchcolor COLOR¶
Apply given COLOR to the branch
- --close¶
Close the branch being committed
- --date-override DATETIME¶
Make DATETIME the time of the check-in. Useful when importing historical check-ins from another version control system.
- --delta¶
Use a delta manifest in the commit process
- --editor NAME¶
Text editor to use for check-in comment.
- --hash¶
Verify file status using hashing rather than relying on filesystem mtimes
- --if-changes¶
Make this command a silent no-op if there are no changes
- --ignore-clock-skew¶
If a clock skew is detected, ignore it and behave as if the user had entered
yesto the question of whether to proceed despite the skew.
- --ignore-oversize¶
Do not warn the user about oversized files
- --integrate¶
Close all merged-in branches
- -m, --comment COMMENT-TEXT¶
Use COMMENT-TEXT as the check-in comment
- -M, --message-file FILE¶
Read the check-in comment from FILE
- -n, --dry-run¶
Do not actually create a new check-in. Just show what would have happened. For debugging.
- -v, --verbose¶
Show a diff in the commit message prompt
- --no-prompt¶
This option disables prompting the user for input and assumes an answer of
Nofor every question.
- --no-warnings¶
Omit all warnings about file contents
- --no-verify¶
Do not run before-commit hooks
- --no-verify-comment¶
Do not validate the check-in comment
- --nosign¶
Do not attempt to sign this commit with gpg
- --nosync¶
Do not auto-sync prior to committing
- --override-lock¶
Allow a check-in even though parent is locked
- --private¶
Never sync the resulting check-in and make all descendants private too.
- --proxy PROXY¶
Use PROXY as http proxy during sync operation
- --tag TAG-NAME¶
Add TAG-NAME to the check-in. May be repeated.
- --trace¶
Debug tracing
- --user-override USER¶
Record USER as the login that created the new check-in, rather that the current user.
- -L, --license LICENSENAME¶
Add the check-in of this submission to the specified license
See Also¶
Examples¶
Init and open a repository
$ vb init commit_repo.vbyte
project-id: 026a11e470450cbe0442d08a0876cccd69aa1906
server-id: 903921a689eb37b284115d46a97fc33614f0d4c1
admin-user: ubuntu (initial remote-access password is "eTkRNFhX7D")
$ vb open -f commit_repo.vbyte
project-name: <unnamed>
repository: /tmp/sphinx_tests/1429e932/commit_repo/commit_repo.vbyte
local-root: /tmp/sphinx_tests/1429e932/commit_repo/
config-db: /tmp/sphinx_tests/1429e932/.visionbyte
project-code: 026a11e470450cbe0442d08a0876cccd69aa1906
checkout: b76145728b9bafe3a6577643ec76922322688c34 2026-03-20 03:02:58 UTC
tags: trunk
comment: initial empty check-in (user: ubuntu)
check-ins: 1
Add and commit an initial file
$ vb sys echo "Hello VisionByte" > README.md
$ vb add README.md
ADDED README.md
$ vb commit -m "Initial commit"
Committed version: 24bf1d4f75ccfd086211762fa9e257fc0f98ff67756f34beee8ecd46af5560c8
Make a commit with no changes
$ vb commit -m "No changes commit" --allow-empty
Committed version: 51dffbba36fa9f30b2ef68a51fcc8a491dcd1cff849bb039112fe0ae5ce9d08e
Commit the changes to a new branch
$ vb sys echo "This is changes for feature/x branch" > README.md
$ vb commit -m "Commit to new branch" --branch feature/x
Committed version: 191a348cc4ee207ec21bbdb541ba9eae7c2e9ba4c060b3aaf53aaac477061a7d
Show the commit history by timeline command
$ vb timeline -type ci --verbose
=== 2026-03-20 ===
03:02:58 [191a348cc4] *CURRENT* Commit to new branch (user: ubuntu tags: feature/x)
EDITED README.md
03:02:58 [51dffbba36] No changes commit (user: ubuntu tags: trunk)
03:02:58 [24bf1d4f75] Initial commit (user: ubuntu tags: trunk)
ADDED README.md
03:02:58 [b76145728b] initial empty check-in (user: ubuntu tags: trunk)
+++ no more data (4) +++