Manage a workspace of git repositories
Project description
Workspace Check (wcheck)
Compares different versions of git repositories and reports their differences. Possible options of workspace:
- local workspace in a directory, represented by the current git branch of each repository
- workspace defined by a vcs file
Possible comparisions:
- compare local workspace against a configuration file (command=wconfig)
- compare two configuration files, e.g. robot_A.vcs with robot_B.vcs (command=config_list)
- compare all git references of a configurion file, this includes all active branches and tags (command=config_versions)
Usage
General usage
wcheck <command> <parameters>
Command options: status, wconfig, config_list, config_versions
Check workspace status
wcheck status [-w <workspace_location>] [--full] [--gui] [-v] [--show-time]
It will show the git status of each repository. The legend is U: number of untracked files, C: number of changed files, S: number of staged files, arrow up: number of commits to push, arrow down: number of commits to pull.
Workspace location can be specified with argument -w, if not provided, it will use current location.
Compare workspace to a configuration file:
wcheck wconfig -c <config_file> [--gui] [-v] [--show-time]
The configuration file uses VCSTOOL structure, see an overview below
Compare multiple configuration files
wcheck config_list -c <config_A> <config_B> .. <config_N>
Compare git references (branches and tags), of the configuration file
wcheck config_versions -c <config> [-h] [--full] [-v] [--show-time] [--full-path]
Optional arguments
-v --verbose: verbose output
-h --help: show help
--full: show full output, not only differences
--gui: show graphical user interface
--show-time: show elapsed time since last commit and reference creation
--fetch: fetch repositories before comparing
--full-path: show full path for each configuration file
VCSTOOL Overview
This repo is based on vcstool (do not confuse with vctools, a similar but deprecated tool for working with vcs files). A workspace is defined with a yaml file describing each repository
repositories:
<repo directory name>:
type: <repo type>
url: <repo url>
version: <repo version>
where repo directory name is the name of the directory where the repo is cloned to (including parent folders in any), repo url is the url of the repo (using git or https), repo type is the type of repo (git, hg, svn, bzr, etc), and repo version is the version of the repo to check against, specified as a branch name, tag name, or commit hash. Example:
repositories:
vcstool:
type: git
url: git@github.com:dirk-thomas/vcstool.git
version: master
Other multi-repository tools
| Name | Status | Last release | Language | Git interaction | Terminal | GUI | Compares configs | Compares versions | Description |
|---|---|---|---|---|---|---|---|---|---|
| garden | active | July 2022 | Rust | native rust | Yes | no | no | no | manage git project dependencies and worktrees, custom commands |
| gfold | active | July 2022 | Rust | native rust | Yes | no | lists status of multiple repositories, readonly, config file, rust | ||
| ghq | active | May 2022 | Go | yes | manage remote repository clones | ||||
| git-plus | active | August 2022 | Python | git cli w/subprocess | multi: run commands in multiple git repos | ||||
| git-repo-updater | old | 2019 | Python | python gitRepo | gitup: update multiple git repos at once | ||||
| gita | active | January 2022 | Python | git cli w/subprocess | manage multiple git repos | ||||
| gitbatch | Go | manage multiple git repos in one place | |||||||
| go-vcs | active | March 2022 | Go | version control repository management for Golang | |||||
| kas | active | August 2022 | Python | bitbake repository management tool | |||||
| mgitstatus | active | June 2022 | Bash | git cli | show status in multiple git repos | ||||
| mani | active | June 2022 | manage multiple repositories, tasks, tags, YAML config, golang | ||||||
| multi-gitter | active | August 2022 | Go | run command and commit, manipulates pull requests, YAML config, tightly bound to forges (GitHub, GitLab, Gitea) | |||||
| mu-repo | active | Octover 20220 | Python | help working with multiple git repos | |||||
| repo | active | git repository management tool | |||||||
| rosinstall | archived | 2016 | Python | source code workspace management tool | |||||
| silver-platter | active | March 2022 | Python | make automated changes in different version control repositories | |||||
| uncommitted | active | January 2021 | Python | find uncommitted changes in VCS directories | |||||
| v | abandoned | 2009 | Bash | version control subcommand wrapper | |||||
| VCS | abandoned | 2018 | a wrapper for version control systems | ||||||
| vcs-repo-mgr | abandoned | 2018 | Python | version control repository manager | |||||
| vcstool | active | Python | git cli w/subprocess | work with multiple repositories | |||||
| vcstools | archived | Python | Python API wrapping version control systems | ||||||
| wstool | archived | Python | maintain workspace of projects from multiple VCSes |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wcheck-0.1.4.tar.gz.
File metadata
- Download URL: wcheck-0.1.4.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.12.3 Linux/6.11.0-17-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e047f22c9de32c74403349c3047232d6bceadcab925c2a7164371ed760fb833
|
|
| MD5 |
125a811968afdeeb00ce8e723e0fc22e
|
|
| BLAKE2b-256 |
137905f94d6c75fb5bcca8e5806179ce90a8228ae1aa7ea6fccdf937e9d40d06
|
File details
Details for the file wcheck-0.1.4-py3-none-any.whl.
File metadata
- Download URL: wcheck-0.1.4-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.12.3 Linux/6.11.0-17-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0bf3baf438155150de41bef7edfa05a34cdca059ae0efc352a6bf271d1d56bd4
|
|
| MD5 |
483e6d37acc5de953620beafd19095f5
|
|
| BLAKE2b-256 |
6c6ebb3af2190479c206c7a08b459043c6f828fff0829f6590ac84f51aafa74f
|