skilleter-thingy 0.0.86__tar.gz → 0.0.88__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of skilleter-thingy might be problematic. Click here for more details.

Files changed (74) hide show
  1. {skilleter_thingy-0.0.86/skilleter_thingy.egg-info → skilleter_thingy-0.0.88}/PKG-INFO +55 -6
  2. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/README.md +54 -5
  3. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/pyproject.toml +1 -1
  4. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/multigit.py +15 -5
  5. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88/skilleter_thingy.egg-info}/PKG-INFO +55 -6
  6. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/LICENSE +0 -0
  7. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/setup.cfg +0 -0
  8. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/__init__.py +0 -0
  9. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/addpath.py +0 -0
  10. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/borger.py +0 -0
  11. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/box.py +0 -0
  12. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/console_colours.py +0 -0
  13. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/diskspacecheck.py +0 -0
  14. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/docker_purge.py +0 -0
  15. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/ffind.py +0 -0
  16. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/ggit.py +0 -0
  17. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/ggrep.py +0 -0
  18. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_br.py +0 -0
  19. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_ca.py +0 -0
  20. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_cleanup.py +0 -0
  21. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_co.py +0 -0
  22. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_common.py +0 -0
  23. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_hold.py +0 -0
  24. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_mr.py +0 -0
  25. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_parent.py +0 -0
  26. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_review.py +0 -0
  27. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_update.py +0 -0
  28. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/git_wt.py +0 -0
  29. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/gitcmp_helper.py +0 -0
  30. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/gitprompt.py +0 -0
  31. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/gl.py +0 -0
  32. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/gphotosync.py +0 -0
  33. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/linecount.py +0 -0
  34. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/moviemover.py +0 -0
  35. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/photodupe.py +0 -0
  36. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/phototidier.py +0 -0
  37. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/py_audit.py +0 -0
  38. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/readable.py +0 -0
  39. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/remdir.py +0 -0
  40. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/rmdupe.py +0 -0
  41. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/rpylint.py +0 -0
  42. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/splitpics.py +0 -0
  43. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/strreplace.py +0 -0
  44. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/sysmon.py +0 -0
  45. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/tfm.py +0 -0
  46. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/tfparse.py +0 -0
  47. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/__init__.py +0 -0
  48. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/colour.py +0 -0
  49. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/dc_curses.py +0 -0
  50. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/dc_defaults.py +0 -0
  51. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/dc_util.py +0 -0
  52. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/dircolors.py +0 -0
  53. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/docker.py +0 -0
  54. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/files.py +0 -0
  55. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/git.py +0 -0
  56. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/git2.py +0 -0
  57. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/gitlab.py +0 -0
  58. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/path.py +0 -0
  59. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/popup.py +0 -0
  60. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/process.py +0 -0
  61. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/run.py +0 -0
  62. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/tfm_pane.py +0 -0
  63. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/tidy.py +0 -0
  64. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/thingy/venv_template.py +0 -0
  65. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/trimpath.py +0 -0
  66. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/venv_create.py +0 -0
  67. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/window_rename.py +0 -0
  68. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/xchmod.py +0 -0
  69. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy/yamlcheck.py +0 -0
  70. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy.egg-info/SOURCES.txt +0 -0
  71. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy.egg-info/dependency_links.txt +0 -0
  72. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy.egg-info/entry_points.txt +0 -0
  73. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy.egg-info/requires.txt +0 -0
  74. {skilleter_thingy-0.0.86 → skilleter_thingy-0.0.88}/skilleter_thingy.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: skilleter_thingy
3
- Version: 0.0.86
3
+ Version: 0.0.88
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk
@@ -33,7 +33,56 @@ The following commands are documented in detail in the help output that can be d
33
33
 
34
34
  This README just contains a summary of the functionality of each command.
35
35
 
36
- # Git Utilities
36
+ # Git Repo Management
37
+
38
+ ## multigit
39
+
40
+ Manage a collection of related git working trees.
41
+
42
+ This is intended for use in a situation where you have a collection of related git working trees organised in a directory hierarchy and not necessarily managed using git submodules or any other tool. It allows you to run git commands on multiple working trees at once, without navigating around the different working trees to do so.
43
+
44
+ Start by running ensuring that the default branch (e.g. `main`) is checked out in each of the working trees and, in the top-level directory, run `multigit init` to create the configuration file which, by default is called `multigit.toml` - this is just a text file that sets the configuration for each working tree in terms of name, origin, default branch and location.
45
+
46
+ By default, when a multigit command, other than `init` is run, it runs a git command in each of the working trees. The command takes a number of options that can be used to select the list of working trees that each of the subcommands that it supports runs in:
47
+
48
+ *--repos / -r* Allows a list of working trees to be specfied, either as the full or relative path, the name or a wildcard.
49
+
50
+ *--modified / -m* Run only in working trees containing locally modified files
51
+
52
+ *--branched / -b* Run only working trees where the current branch that is checked out is NOT the default branch
53
+
54
+ # TODO - Do we actually need any commands other than init, dir, config as everything else can be done via run?
55
+ # TODO - Could just make the commands multigit +init/+dir/+config and then for anything else, just pass the whole of the command line to git once we've parsed the default branch?
56
+
57
+ Multigit supports a (growing) list of subcommands:
58
+
59
+ *init* - Create or update the configuration file
60
+
61
+ *status* - Run `git status` in each of the working trees.
62
+
63
+ *fetch* - Run `git fetch` in each of the working trees
64
+
65
+ *pull* - Run `git pull` in each of the working trees
66
+
67
+ *push* - Run `git push` in each of the working trees
68
+
69
+ *co*
70
+
71
+ *commit*
72
+
73
+ *update*
74
+
75
+ *clean*
76
+
77
+ *dir*
78
+
79
+ *config*
80
+
81
+ *review*
82
+
83
+ *run*
84
+
85
+ # Miscellaneous Git Utilities
37
86
 
38
87
  ## ggit
39
88
 
@@ -47,6 +96,10 @@ Run 'git grep' in all repos under the current directory (note that this is not r
47
96
 
48
97
  Output a string containing colour-coded shell nesting level, current directory and git working tree status (used in the shell prompt).
49
98
 
99
+ # Git Extensions
100
+
101
+ Due to the way that the git command works, these can be run as they were additional git subcommands
102
+
50
103
  ## git ca
51
104
 
52
105
  Improved version of 'git commit --amend'. Updates files that are already in the commit and, optionally, adds and commits additional files.
@@ -75,10 +128,6 @@ Output the top level directory of the git working tree or return an error if we
75
128
 
76
129
  Console-based git change review tool.
77
130
 
78
- ## multigit
79
-
80
- Manage a collection of related git repoitories.
81
-
82
131
  ## GitLab Commands
83
132
 
84
133
  ### git mr
@@ -12,7 +12,56 @@ The following commands are documented in detail in the help output that can be d
12
12
 
13
13
  This README just contains a summary of the functionality of each command.
14
14
 
15
- # Git Utilities
15
+ # Git Repo Management
16
+
17
+ ## multigit
18
+
19
+ Manage a collection of related git working trees.
20
+
21
+ This is intended for use in a situation where you have a collection of related git working trees organised in a directory hierarchy and not necessarily managed using git submodules or any other tool. It allows you to run git commands on multiple working trees at once, without navigating around the different working trees to do so.
22
+
23
+ Start by running ensuring that the default branch (e.g. `main`) is checked out in each of the working trees and, in the top-level directory, run `multigit init` to create the configuration file which, by default is called `multigit.toml` - this is just a text file that sets the configuration for each working tree in terms of name, origin, default branch and location.
24
+
25
+ By default, when a multigit command, other than `init` is run, it runs a git command in each of the working trees. The command takes a number of options that can be used to select the list of working trees that each of the subcommands that it supports runs in:
26
+
27
+ *--repos / -r* Allows a list of working trees to be specfied, either as the full or relative path, the name or a wildcard.
28
+
29
+ *--modified / -m* Run only in working trees containing locally modified files
30
+
31
+ *--branched / -b* Run only working trees where the current branch that is checked out is NOT the default branch
32
+
33
+ # TODO - Do we actually need any commands other than init, dir, config as everything else can be done via run?
34
+ # TODO - Could just make the commands multigit +init/+dir/+config and then for anything else, just pass the whole of the command line to git once we've parsed the default branch?
35
+
36
+ Multigit supports a (growing) list of subcommands:
37
+
38
+ *init* - Create or update the configuration file
39
+
40
+ *status* - Run `git status` in each of the working trees.
41
+
42
+ *fetch* - Run `git fetch` in each of the working trees
43
+
44
+ *pull* - Run `git pull` in each of the working trees
45
+
46
+ *push* - Run `git push` in each of the working trees
47
+
48
+ *co*
49
+
50
+ *commit*
51
+
52
+ *update*
53
+
54
+ *clean*
55
+
56
+ *dir*
57
+
58
+ *config*
59
+
60
+ *review*
61
+
62
+ *run*
63
+
64
+ # Miscellaneous Git Utilities
16
65
 
17
66
  ## ggit
18
67
 
@@ -26,6 +75,10 @@ Run 'git grep' in all repos under the current directory (note that this is not r
26
75
 
27
76
  Output a string containing colour-coded shell nesting level, current directory and git working tree status (used in the shell prompt).
28
77
 
78
+ # Git Extensions
79
+
80
+ Due to the way that the git command works, these can be run as they were additional git subcommands
81
+
29
82
  ## git ca
30
83
 
31
84
  Improved version of 'git commit --amend'. Updates files that are already in the commit and, optionally, adds and commits additional files.
@@ -54,10 +107,6 @@ Output the top level directory of the git working tree or return an error if we
54
107
 
55
108
  Console-based git change review tool.
56
109
 
57
- ## multigit
58
-
59
- Manage a collection of related git repoitories.
60
-
61
110
  ## GitLab Commands
62
111
 
63
112
  ### git mr
@@ -7,7 +7,7 @@ name = "skilleter_thingy"
7
7
 
8
8
  # Version must be incremented to install updated Thingy
9
9
 
10
- version = "0.0.86"
10
+ version = "0.0.88"
11
11
 
12
12
  authors = [
13
13
  {name="John Skilleter", email="john@skilleter.org.uk"},
@@ -504,13 +504,23 @@ def mg_run(args, config, console):
504
504
 
505
505
  _ = config
506
506
 
507
- cmd = shlex.split(args.cmd[0])
507
+ if len(args.cmd) == 0:
508
+ error('No command specified')
509
+ elif len(args.cmd) == 1:
510
+ command = shlex.split(args.cmd[0])
511
+ else:
512
+ command = args.cmd
513
+
508
514
 
509
515
  for repo in select_git_repos(args, config):
510
516
  if not args.quiet:
511
517
  show_progress(console.columns, repo.name)
512
518
 
513
- run_git_status(cmd, repo.name, args.cont)
519
+ repo_command = []
520
+ for cmd in command:
521
+ repo_command.append(branch_name(cmd, repo['default branch']))
522
+
523
+ run_git_status(repo_command, repo.name, args.cont)
514
524
 
515
525
  ################################################################################
516
526
 
@@ -611,9 +621,9 @@ def main():
611
621
 
612
622
  parser_clean.add_argument('--recurse', '-d', action='store_true', help='Recurse into subdirectories')
613
623
  parser_clean.add_argument('--force', '-f', action='store_true', help='If the Git configuration variable clean.requireForce is not set to false, git clean will refuse to delete files or directories unless given -f or -i')
614
- #parser_clean.add_argument('--interactive', '-i', action='store_true', help='Show what would be done and clean files interactively.')
624
+ # TODO: parser_clean.add_argument('--interactive', '-i', action='store_true', help='Show what would be done and clean files interactively.')
615
625
  parser_clean.add_argument('--dry-run', '-n', action='store_true', help='Don’t actually remove anything, just show what would be done.')
616
- #parser_clean.add_argument('--quiet', '-q', , action='store_true', help='Be quiet, only report errors, but not the files that are successfully removed.')
626
+ # TODO: parser_clean.add_argument('--quiet', '-q', , action='store_true', help='Be quiet, only report errors, but not the files that are successfully removed.')
617
627
  parser_clean.add_argument('--exclude', '-e', action='store', help='Use the given exclude pattern in addition to the standard ignore rules.')
618
628
  parser_clean.add_argument('-x', action='store_true', help='Don’t use the standard ignore rules, but still use the ignore rules given with -e options from the command line.')
619
629
  parser_clean.add_argument('-X', action='store_true', help='Remove only files ignored by Git. This may be useful to rebuild everything from scratch, but keep manually created files.')
@@ -625,7 +635,7 @@ def main():
625
635
 
626
636
  parser_run = subparsers.add_parser('run', help='Run any git command in each of the working trees')
627
637
  parser_run.add_argument('--cont', '-c', action='store_true', help='Continue if the command returns an error in any of the working trees')
628
- parser_run.add_argument('cmd', nargs=1, action='store', help='The command to run (should be quoted)')
638
+ parser_run.add_argument('cmd', nargs='*', action='store', help='The command to run (the command may need to be quoted)')
629
639
 
630
640
  parser_review = subparsers.add_parser('review', help='Review the changes in a working tree')
631
641
  parser_review.add_argument('parameters', nargs='*', action='store', help='Parameters passed to the "git review" command')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: skilleter_thingy
3
- Version: 0.0.86
3
+ Version: 0.0.88
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk
@@ -33,7 +33,56 @@ The following commands are documented in detail in the help output that can be d
33
33
 
34
34
  This README just contains a summary of the functionality of each command.
35
35
 
36
- # Git Utilities
36
+ # Git Repo Management
37
+
38
+ ## multigit
39
+
40
+ Manage a collection of related git working trees.
41
+
42
+ This is intended for use in a situation where you have a collection of related git working trees organised in a directory hierarchy and not necessarily managed using git submodules or any other tool. It allows you to run git commands on multiple working trees at once, without navigating around the different working trees to do so.
43
+
44
+ Start by running ensuring that the default branch (e.g. `main`) is checked out in each of the working trees and, in the top-level directory, run `multigit init` to create the configuration file which, by default is called `multigit.toml` - this is just a text file that sets the configuration for each working tree in terms of name, origin, default branch and location.
45
+
46
+ By default, when a multigit command, other than `init` is run, it runs a git command in each of the working trees. The command takes a number of options that can be used to select the list of working trees that each of the subcommands that it supports runs in:
47
+
48
+ *--repos / -r* Allows a list of working trees to be specfied, either as the full or relative path, the name or a wildcard.
49
+
50
+ *--modified / -m* Run only in working trees containing locally modified files
51
+
52
+ *--branched / -b* Run only working trees where the current branch that is checked out is NOT the default branch
53
+
54
+ # TODO - Do we actually need any commands other than init, dir, config as everything else can be done via run?
55
+ # TODO - Could just make the commands multigit +init/+dir/+config and then for anything else, just pass the whole of the command line to git once we've parsed the default branch?
56
+
57
+ Multigit supports a (growing) list of subcommands:
58
+
59
+ *init* - Create or update the configuration file
60
+
61
+ *status* - Run `git status` in each of the working trees.
62
+
63
+ *fetch* - Run `git fetch` in each of the working trees
64
+
65
+ *pull* - Run `git pull` in each of the working trees
66
+
67
+ *push* - Run `git push` in each of the working trees
68
+
69
+ *co*
70
+
71
+ *commit*
72
+
73
+ *update*
74
+
75
+ *clean*
76
+
77
+ *dir*
78
+
79
+ *config*
80
+
81
+ *review*
82
+
83
+ *run*
84
+
85
+ # Miscellaneous Git Utilities
37
86
 
38
87
  ## ggit
39
88
 
@@ -47,6 +96,10 @@ Run 'git grep' in all repos under the current directory (note that this is not r
47
96
 
48
97
  Output a string containing colour-coded shell nesting level, current directory and git working tree status (used in the shell prompt).
49
98
 
99
+ # Git Extensions
100
+
101
+ Due to the way that the git command works, these can be run as they were additional git subcommands
102
+
50
103
  ## git ca
51
104
 
52
105
  Improved version of 'git commit --amend'. Updates files that are already in the commit and, optionally, adds and commits additional files.
@@ -75,10 +128,6 @@ Output the top level directory of the git working tree or return an error if we
75
128
 
76
129
  Console-based git change review tool.
77
130
 
78
- ## multigit
79
-
80
- Manage a collection of related git repoitories.
81
-
82
131
  ## GitLab Commands
83
132
 
84
133
  ### git mr