CLI for DecentVCS.
Dependency | Version |
---|---|
go |
1.19+ |
git |
2.35+ |
./install.sh
dvcs [global options] command [command options] [arguments...]
Command | Description |
---|---|
login |
Log in (required to use other commands) |
logout |
Log out |
init [--patch?] [slug] |
Initialize a new project in the current directory. Slug must be in the format <team_name>/<project_name> |
clone [slug] [path?] |
Clone a project |
changes |
Print local changes |
push [-y] [message?] |
Push local changes to remote |
sync [-y] [commit_index?] |
Sync local project to the specified commit (or latest commit if not specified). Retains all local changes unless prompted to override. |
reset [-y] |
Reset all local changes to be in sync with remote |
revert [-y] |
Revert to the previous commit. Note: This will also reset all local changes. |
branches |
List all branches in the project |
branch new [name] |
Create a new branch |
branch use [name] |
Switch to the specified branch for local project |
branch delete [-y] [name] |
Delete a branch. No associated commits or stored project files will be deleted. |
branch set-default [name] |
Set the default branch for the project |
history [-l=10] |
Print commit history |
status |
Print project config |
invite [emails...] |
Invite one or many users to the project |
locks [-b | --branch?] |
List locked files for a branch |
lock [paths...] |
Lock files or directories from being modified by others |
unlock [-f | --force?] [paths...] |
Unlock files or directories, allowing them to be modified again by others |
Flag | Description |
---|---|
-y or --yes |
Skip confirmation |
-l or --limit |
Limit returned results |
Create a .decentignore
file in your project. Each line will be read as a regular expression (regex),
with all leading and trailing whitespace being ignored. You can also comment out any line with the
#
prefix.
Example:
# Hey look, a comment!
file_name
entire_dir/.*