Event Timeline
Comment Actions
There are two repos with very similar names, this is the correct one: https://pypi.org/project/gitup/
Comment Actions
Here are some of my thoughts on using gitup over the past year or so.
I find it useful that in gitup you can:
- add git repos to a list so you don't have to type out each repo to update every time (although this might not be needed if mwcli is just updating all repos in the mediawiki/core directory or all repos downloaded via the get-code command)
- add a directory to the list and all git repos within the directory are updated (as above this might not be needed in mwcli)
- run a shell command on all registered git repos via the --exec command
- delete remote-tracking branches that no longer exist on their remote via the -p/--prune flag
Possible improvements:
- be able to update multiple repos at the same time (rather than one at a time) - probably best if this is configurable but defaults to 3(?) repos at a time
- be able to filter to just update the main/master branch of each repo
- update the git sub-modules as well
- have different lists (again this might not be needed in mwcli)
- have different list per directory (again this might not be needed in mwcli)
- have a command to show the status of each repo. This can also be achieved if an "execute command" feature is added e.g. I currently use this gitup command gitup --exec "git -c color.ui=always status --short --branch"
Other ideas for this feature:
- as well as running composer update in the mediawiki/core directory/repository, configure which other dirs/repos a composer update should be run (e.g. extensions/Wikibase)
- run the update maintenance script (php maintenance/run.php update --quick) after updating git repos and doing a composer update.
- repair the database (mw dev mysql exec -- mysqlcheck --repair -u root -ptoor --all-databases). I'm not sure when the databases need to be repaired/what causes them to fail but I currently have a script that repairs the databases, updates composer in mediawiki/core and extensions/Wikibase, and runs the maintenance script.