Skip to main content

A TUI helper to keep code repositories up to date

Project description

muchstuff

Small utility tool to keep interesting code repositories up to date while also seeing what changed in them.

Why?

Whenever I notice that I have a local clone of some software project lying around, I wonder what new stuff has been introduced since the last time I looked at it. To answer that question I usually go into the repo, cleanup whatever local modifications I might have made, switch to their master/main branch, and just pull. Then I can diff the old and new HEAD and see all the exciting new stuff.

To automate the latter part of pulling the new stuff and viewing the diff, I decided to write a little helper tool. There are of course quite a few tools out there that keep a list of repositories synchronised, but getting them to let me view the changes how I wanted to didn't seem easily possible. Coupled with my desire to test out the textual TUI framework lead to me writing this.

How?

Install muchstuff with the tool of your choice, e.g. pipx(u) install muchstuff, give it a ~/.config/muchstuff.toml looking like so:

[_DEFAULTS]
type = 'git'

[somerepo]
dest = '~/mywork/somerepo'
source = 'git@gitlab.mycompany.biz:mywork/somerepo'

[muchstuff]
dest = '/nas-storage/corerepos/muchstuff'
source = 'git@github.com:yggdr/muchstuff'

Now muchstuff will, upon starting, pull from all these repositories, and show up to 4 outputs per repo:

  • The result of the pull, as in the output of e.g. git pull
  • The diff for each file changed
  • The commits it just pulled
  • The commits it just pulled, with the changes per commit.

Known bugs

There are still a few issues that I haven't had the time or motivation to work out. Use at your own risk.

Mercurial was supported in an older, less powerfull version. I'm not sure when I will get around getting that up to speed again.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

muchstuff-0.4.4.tar.gz (68.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

muchstuff-0.4.4-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file muchstuff-0.4.4.tar.gz.

File metadata

  • Download URL: muchstuff-0.4.4.tar.gz
  • Upload date:
  • Size: 68.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.24

File hashes

Hashes for muchstuff-0.4.4.tar.gz
Algorithm Hash digest
SHA256 0049b71b083cb05f0a6e0d8aa88bef3dce0fc4e84ed1503ad8c8d3669bcd0b82
MD5 0f0d49925a182c25c5b0e36ad00d158b
BLAKE2b-256 7d32962b71196300bdf6bd4a4bd2e75999fb02816f9518f17303b19c43f32843

See more details on using hashes here.

File details

Details for the file muchstuff-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: muchstuff-0.4.4-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.24

File hashes

Hashes for muchstuff-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b13a7054518dd22587b735db0c090512c7be811cd16cc081e9916d370ded100e
MD5 b557698fb361a5ceea547faf5fb7377c
BLAKE2b-256 298ce40ae77730cf754456dd05bc79b84126a96c3caca780a09211c5d35b8ef7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page