#microservices #git #multi-projects

app switcher

Multi git repositories project organizer

8 releases

Uses new Rust 2021

0.0.8-alpha Jan 3, 2022
0.0.7-alpha Jan 3, 2022
0.0.6-alpha Dec 31, 2021

#201 in Development tools

MIT license

30KB
767 lines

Welcome to switcher 👋

License: MIT Cargo: Switcher Github: CI Twitter: omarahm3

Multi git repositories project organizer made with rust.

This project is pretty immature, it was created so that i can learn Rust, there are other variants of this project made with other languages

However this might be the main project in which i'm going to continue maintaining it.

Install

From releases

wget -qcO ~/.local/bin/switcher https://github.com/omarahm3/switcher/releases/download/v<LATEST_VERSION>/switcher
chmod +x ~/.local/bin/switcher

Or install it as a cargo crate

cargo install switcher --version <LATEST_VERSION>

If you just don't know the version to use

cargo install switcher --version (cargo search switcher --limit 1 | head -n 1 | cut -d ' ' -f 3 | sed -e 's/"//g')

Build

git clone git@github.com:omarahm3/switcher.git
cd switcher
cargo build --release --all-features

Usage

switcher help

Using feature files

Feature files are files that describe a certain feature/bug/whatever on a specific project. You can create them in a specific format:

{
	"project": "example",
	"feature_specs": [
		{
			"repository": "my_repo",
			"branch": "fix/tricky-bug"
		},
		...
	]
}

You can check this example file too, and once you have the file somewhere you can just pass that to switcher by running:

switcher feature ./path-to-feature-file.json

and it will do the rest

Author

👤 Omar Ahmed

🤝 Contributing

Contributions, issues and feature requests are welcome!

Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2021 Omar Ahmed.

This project is MIT licensed.

Dependencies

~0.7–1.5MB
~33K SLoC