gitonic 0.17.0__tar.gz → 0.18.1__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.
- {gitonic-0.17.0 → gitonic-0.18.1}/BACKLOG.md +31 -23
- {gitonic-0.17.0 → gitonic-0.18.1}/CHANGELOG.md +37 -1
- {gitonic-0.17.0 → gitonic-0.18.1}/LICENSE.md +1 -1
- {gitonic-0.17.0 → gitonic-0.18.1}/MANIFEST.in +3 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/PKG-INFO +200 -115
- {gitonic-0.17.0 → gitonic-0.18.1}/README.md +128 -86
- gitonic-0.18.1/gitonic/__init__.py +7 -0
- gitonic-0.18.1/gitonic/__main__.py +6 -0
- gitonic-0.18.1/gitonic/core/__init__.py +11 -0
- gitonic-0.18.1/gitonic/core/conf.py +133 -0
- gitonic-0.18.1/gitonic/core/configs.py +26 -0
- gitonic-0.18.1/gitonic/core/const.py +56 -0
- gitonic-0.18.1/gitonic/core/dataflow.py +81 -0
- {gitonic-0.17.0/gitonic → gitonic-0.18.1/gitonic/core}/file.py +55 -29
- gitonic-0.18.1/gitonic/core/gitcmd.py +209 -0
- gitonic-0.18.1/gitonic/core/gitobj.py +169 -0
- gitonic-0.18.1/gitonic/core/giton.py +413 -0
- gitonic-0.18.1/gitonic/core/gitonapp.py +502 -0
- gitonic-0.18.1/gitonic/core/gitutil.py +447 -0
- gitonic-0.18.1/gitonic/core/logs.py +240 -0
- gitonic-0.18.1/gitonic/core/ncur.py +24 -0
- gitonic-0.18.1/gitonic/core/proc.py +165 -0
- gitonic-0.18.1/gitonic/core/runr.py +101 -0
- {gitonic-0.17.0/gitonic → gitonic-0.18.1/gitonic/core}/sysutil.py +8 -0
- gitonic-0.18.1/gitonic/core/task.py +237 -0
- gitonic-0.18.1/gitonic/gitonic.py +1194 -0
- gitonic-0.18.1/gitonic/gtcd.py +59 -0
- gitonic-0.18.1/gitonic/gtcommon.py +63 -0
- gitonic-0.18.1/gitonic/gtls.py +72 -0
- gitonic-0.18.1/gitonic/tkui/__init__.py +11 -0
- gitonic-0.18.1/gitonic/tkui/icons.py +72 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts/LICENSE +202 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts/MaterialSymbolsOutlined_5BFILL_GRAD_opsz_wght_5D.codepoints +4101 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts/MaterialSymbolsOutlined_5BFILL_GRAD_opsz_wght_5D.ttf +0 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts/MaterialSymbolsRounded_5BFILL_GRAD_opsz_wght_5D.codepoints +4101 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts/MaterialSymbolsRounded_5BFILL_GRAD_opsz_wght_5D.ttf +0 -0
- gitonic-0.18.1/gitonic/tkui/material_fonts.py +63 -0
- gitonic-0.18.1/gitonic/tkui/otherdeps/LICENSE-gitonic +676 -0
- gitonic-0.18.1/gitonic/tkui/otherdeps/LICENSE-tktootip +21 -0
- {gitonic-0.17.0/gitonic → gitonic-0.18.1/gitonic/tkui}/singleinstance.py +52 -3
- gitonic-0.18.1/gitonic/tkui/tkuiapp.py +355 -0
- gitonic-0.18.1/gitonic/tkui/tkuicore.py +233 -0
- gitonic-0.18.1/gitonic/tkui/tkuiview.py +480 -0
- gitonic-0.18.1/gitonic/tkui/tkuiwidg.py +662 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/gitonic.egg-info/PKG-INFO +200 -115
- gitonic-0.18.1/gitonic.egg-info/SOURCES.txt +56 -0
- gitonic-0.18.1/gitonic.egg-info/entry_points.txt +6 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/gitonic.egg-info/requires.txt +1 -1
- {gitonic-0.17.0 → gitonic-0.18.1}/setup.cfg +0 -1
- {gitonic-0.17.0 → gitonic-0.18.1}/setup.py +3 -2
- gitonic-0.17.0/gitonic/__init__.py +0 -11
- gitonic-0.17.0/gitonic/__main__.py +0 -8
- gitonic-0.17.0/gitonic/const.py +0 -1
- gitonic-0.17.0/gitonic/gitutil.py +0 -315
- gitonic-0.17.0/gitonic/gui.py +0 -1364
- gitonic-0.17.0/gitonic/icons.py +0 -7
- gitonic-0.17.0/gitonic/main.py +0 -184
- gitonic-0.17.0/gitonic/pyjsoncfg.py +0 -301
- gitonic-0.17.0/gitonic/task.py +0 -137
- gitonic-0.17.0/gitonic/tile/__init__.py +0 -11
- gitonic-0.17.0/gitonic/tile/core.py +0 -1385
- gitonic-0.17.0/gitonic/tile/tkcmd.py +0 -81
- gitonic-0.17.0/gitonic.egg-info/SOURCES.txt +0 -33
- gitonic-0.17.0/gitonic.egg-info/entry_points.txt +0 -2
- {gitonic-0.17.0 → gitonic-0.18.1}/git-alt.svg +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/git-black.svg +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/git-red.svg +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/git-white.svg +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/gitonic.egg-info/dependency_links.txt +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/gitonic.egg-info/top_level.txt +0 -0
- {gitonic-0.17.0 → gitonic-0.18.1}/pyproject.toml +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
|
|
2
|
-
# BACKLOG
|
|
2
|
+
# BACKLOG
|
|
3
3
|
|
|
4
4
|
- documentation
|
|
5
5
|
- testcases?
|
|
6
|
-
- revert changes / git checkout support
|
|
7
|
-
- undo support for unstaged files
|
|
8
|
-
- git restore <file
|
|
6
|
+
- ~~revert changes / git checkout support~~
|
|
7
|
+
- ~~undo support for unstaged files~~
|
|
8
|
+
- ~~git restore <file~~
|
|
9
9
|
- ~~git fetch / merge support~~
|
|
10
10
|
- ~~currently gitonic supports only pull~~
|
|
11
11
|
- git branch support
|
|
@@ -23,47 +23,55 @@
|
|
|
23
23
|
- support also git commit --amend
|
|
24
24
|
- git tag support
|
|
25
25
|
- git stash support (list, show, push, pop/apply, drop, clear)
|
|
26
|
-
- support verbose output in expert mode
|
|
27
|
-
- support flags -v and -vv where applicable
|
|
26
|
+
- ~~support verbose output in expert mode~~
|
|
27
|
+
- ~~support flags -v and -vv where applicable~~
|
|
28
28
|
- settings tabs
|
|
29
29
|
- check for installed git
|
|
30
30
|
- ~~git exe configuration in settings~~
|
|
31
31
|
- check for latest version of gitonic
|
|
32
32
|
-
|
|
33
33
|
- ~~config file for last known config~~
|
|
34
|
-
- diff-tool blocks main screen (see next)
|
|
34
|
+
- ~~diff-tool blocks main screen (see next)~~
|
|
35
35
|
- gui rework
|
|
36
36
|
- theme support
|
|
37
|
-
- resize behavior -> expand
|
|
37
|
+
- ~~resize behavior -> expand~~
|
|
38
38
|
- ~~icons~~
|
|
39
|
-
- grid layout / less floating
|
|
40
|
-
- freezing ui -> see background tasks
|
|
39
|
+
- ~~grid layout / less floating ~~
|
|
40
|
+
- ~~freezing ui -> see background tasks~~
|
|
41
41
|
-
|
|
42
|
-
- background task and event loop
|
|
43
|
-
- use TkCmd also for Cmd runners
|
|
42
|
+
- background task and event loop ~~-> freezing gui when running git utils~~
|
|
43
|
+
- ~~use TkCmd also for Cmd runners~~
|
|
44
44
|
- status bar with running background tasks overview?
|
|
45
|
-
-
|
|
45
|
+
- esc esc handler and shut down
|
|
46
|
+
- currently it terminates all running background tasks
|
|
47
|
+
- option to show extra popup to inform the user regarding running tasks
|
|
46
48
|
- refact for integration in other tools
|
|
47
|
-
- filter git on 'changes' tab
|
|
49
|
+
- ~~filter git on 'changes' tab~~
|
|
48
50
|
- rework logging
|
|
49
51
|
- ~~remove print statements in main~~
|
|
50
|
-
- remove print statements in tile.core
|
|
52
|
+
- ~~remove print statements in tile.core~~
|
|
53
|
+
- remove print statements
|
|
51
54
|
- automation / external jobs
|
|
52
55
|
- ~~black PEP8 support~~
|
|
53
|
-
- desktop integration
|
|
54
|
-
- open shell at repo path
|
|
55
|
-
- open file management too at repo path
|
|
56
|
+
- ~~desktop integration~~
|
|
57
|
+
- ~~open shell at repo path~~
|
|
58
|
+
- ~~open file management too at repo path~~
|
|
56
59
|
- ~~history of commit texts~~
|
|
57
60
|
- ~~in combo box~~
|
|
58
61
|
- git log / show integration?
|
|
59
62
|
- git error handling
|
|
60
|
-
- switch to log tab after pull
|
|
61
|
-
- logging, use python logger for expert mode output
|
|
63
|
+
- switch to log tab after pull???
|
|
64
|
+
- ~~logging, use python logger for expert mode output~~
|
|
62
65
|
- support for .gitignore
|
|
63
66
|
- adding single files
|
|
64
|
-
- open .gitignore for editing
|
|
65
|
-
- execute git operations in parallel where possible
|
|
66
|
-
- make expert mode debugging out better (use python logging)
|
|
67
|
+
- ~~open .gitignore for editing~~
|
|
68
|
+
- ~~execute git operations in parallel where possible~~
|
|
69
|
+
- ~~make expert mode debugging out better (use python logging)~~
|
|
70
|
+
- context menu
|
|
71
|
+
- less sensitive (disappears to quickly)
|
|
72
|
+
- multiple row feature
|
|
73
|
+
- splash screen
|
|
74
|
+
- new version notification
|
|
67
75
|
-
|
|
68
76
|
|
|
69
77
|
|
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
|
|
2
|
-
#
|
|
2
|
+
# CHANGELOG
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
## version v0.19.0 - ????????
|
|
6
|
+
-
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## version v0.18.1 - 20251109
|
|
10
|
+
- patch entry point
|
|
11
|
+
-
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## version v0.18.0 - 20251109
|
|
15
|
+
- redesign multi tasking / tk eventloop
|
|
16
|
+
- user interface is now non-blocking
|
|
17
|
+
- multi tasking tested with python 3.12
|
|
18
|
+
- **not yet tested** with python 3.13 / 3.14
|
|
19
|
+
- `gitonic` is released for python3.12 (fixed version)
|
|
20
|
+
- current implementation uses threads to fork `git` processes in the background
|
|
21
|
+
- the main tk eventloop receives the thread results and process this in callbacks
|
|
22
|
+
- read here for detailed information [`tk eventloop`](https://tkdocs.com/tutorial/eventloop.html))
|
|
23
|
+
- ui redesign
|
|
24
|
+
- resizeable main window
|
|
25
|
+
- dropped external font-awesome pip package
|
|
26
|
+
- material design icons included
|
|
27
|
+
- IMPORTANT: new right-mouse context handler `~/.gitonic/contextmenu.json`
|
|
28
|
+
- INCOMPATIBLE to `~/.gitonic/context.json`
|
|
29
|
+
- old context `~/.gitonic/context.json` is NOT supported anymore
|
|
30
|
+
- improved logging
|
|
31
|
+
- filter log for each repo
|
|
32
|
+
- codebase refactored
|
|
33
|
+
- new commandline tools (UNDER CONTSRUCTION - not yet final - dont expect anything!!! - this might be dropped in the future)
|
|
34
|
+
- `gtcd.py`
|
|
35
|
+
- opens a new terminal for a git repo quickly
|
|
36
|
+
- `gtls.py`
|
|
37
|
+
- list all changes for all tracked git repo
|
|
38
|
+
-
|
|
3
39
|
|
|
4
40
|
|
|
5
41
|
## version v0.17.0 - 20250715
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitonic
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.18.1
|
|
4
4
|
Summary: manage a multi git workspace
|
|
5
5
|
Home-page: https://github.com/kr-g/gitonic
|
|
6
6
|
Author: k. goger
|
|
@@ -15,11 +15,10 @@ Classifier: Topic :: Utilities
|
|
|
15
15
|
Classifier: Topic :: Desktop Environment
|
|
16
16
|
Classifier: Topic :: Software Development :: Version Control :: Git
|
|
17
17
|
Classifier: Programming Language :: Python :: 3
|
|
18
|
-
|
|
19
|
-
Requires-Python: >=3.12
|
|
18
|
+
Requires-Python: >=3.12,<3.13
|
|
20
19
|
Description-Content-Type: text/markdown
|
|
21
20
|
License-File: LICENSE.md
|
|
22
|
-
Requires-Dist:
|
|
21
|
+
Requires-Dist: pillow
|
|
23
22
|
Requires-Dist: tkinter-tooltip
|
|
24
23
|
Provides-Extra: pep08
|
|
25
24
|
Requires-Dist: pycodestyle; extra == "pep08"
|
|
@@ -52,7 +51,20 @@ Dynamic: requires-python
|
|
|
52
51
|
[](https://www.python.org/dev/peps/pep-0008/)
|
|
53
52
|
|
|
54
53
|
|
|
55
|
-
you are reading VERSION = v0.
|
|
54
|
+
you are reading VERSION = v0.18.1
|
|
55
|
+
|
|
56
|
+
version v0.18.1 will come with some bigger changes.
|
|
57
|
+
|
|
58
|
+
read latest news here:
|
|
59
|
+
|
|
60
|
+
[`CHANGELOG`](https://github.com/kr-g/gitonic/blob/main/CHANGELOG.md)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
older versions:
|
|
64
|
+
|
|
65
|
+
[`OLD VERSIONS`](https://github.com/kr-g/gitonic/tags)
|
|
66
|
+
|
|
67
|
+
|
|
56
68
|
|
|
57
69
|
|
|
58
70
|
# gitonic
|
|
@@ -321,40 +333,47 @@ to open the system file manager tool (file explorer)
|
|
|
321
333
|
at the base git repo path or at the changed file path.
|
|
322
334
|
|
|
323
335
|
in addition it is possible to add own custom context menu entries here.
|
|
324
|
-
configuration is done with `~/.gitonic/
|
|
336
|
+
configuration is done with `~/.gitonic/contextmenu.json` file.
|
|
325
337
|
|
|
326
338
|
the general structure is:
|
|
327
339
|
|
|
328
340
|
{
|
|
329
|
-
|
|
341
|
+
"acontext-name": {
|
|
330
342
|
"expr": "*",
|
|
331
|
-
"
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
"
|
|
335
|
-
[
|
|
343
|
+
"changes-all|file|repo": [
|
|
344
|
+
{
|
|
345
|
+
"name": "a text $_GIT",
|
|
346
|
+
"para": [
|
|
336
347
|
"cmd-path",
|
|
337
348
|
"whatever_param=$GIT"
|
|
338
349
|
]
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
"some other text $
|
|
342
|
-
[
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
"name": "some other text $_PATH",
|
|
353
|
+
"para": [
|
|
343
354
|
"cmd-path2",
|
|
344
355
|
"whatever_param=$PATH"
|
|
345
356
|
]
|
|
346
|
-
|
|
357
|
+
},
|
|
358
|
+
...
|
|
347
359
|
]
|
|
348
360
|
},
|
|
349
361
|
...
|
|
350
362
|
}
|
|
351
363
|
|
|
364
|
+
where `changes-all|file|repo` is the section where the context menu should appear.
|
|
365
|
+
- `changes-file` is the right section where all files are listed
|
|
366
|
+
- `changes-repo` is the left section where all repos are listed
|
|
367
|
+
- `changes-all` will appear in both (left and right section)
|
|
352
368
|
|
|
353
369
|
here the variables `$GIT`, `$FILE`, `$PATH`, `$NAME`, or `$PYTHON`
|
|
354
370
|
are replaced by the corrosponding path before execution.
|
|
355
371
|
where `$PYTHON` expands to `sys.executable` from `gitonic` runtime.
|
|
356
372
|
and `$NAME` is a placeholder for `os.path.basedir`,
|
|
357
|
-
and `$PATH` for `os.path.dirname
|
|
373
|
+
and `$PATH` for `os.path.dirname`.
|
|
374
|
+
|
|
375
|
+
the variables `$_GIT`, `$_FILE`, `$_PATH`, or `$_NAME` are the shorten
|
|
376
|
+
path specifiers with `~` replacing the users home folder.
|
|
358
377
|
|
|
359
378
|
the `expr` key contains a single file pattern, or a list of
|
|
360
379
|
file patterns - when to enable the context menu.
|
|
@@ -363,96 +382,96 @@ the file pattern is following Unix filename pattern matching.
|
|
|
363
382
|
the `workdir` key will change the current working directory before running
|
|
364
383
|
the command.
|
|
365
384
|
|
|
366
|
-
the `
|
|
367
|
-
and the command params as
|
|
385
|
+
the `name` contains the text to display in the menu,
|
|
386
|
+
and `para` the command-binary plus params as array.
|
|
368
387
|
|
|
369
388
|
the context name as such can have any value
|
|
370
389
|
(as long it is unique in the structure).
|
|
371
390
|
|
|
372
391
|
|
|
373
|
-
below a sample `~/.gitonic/
|
|
392
|
+
below a sample `~/.gitonic/contextmenu.json` file
|
|
374
393
|
for running on linux with xfce.
|
|
375
394
|
|
|
376
395
|
{
|
|
377
396
|
"term-ctx": {
|
|
378
397
|
"expr": "*",
|
|
379
|
-
"
|
|
380
|
-
|
|
381
|
-
"Open Terminal at $
|
|
382
|
-
[
|
|
398
|
+
"changes-all": [
|
|
399
|
+
{
|
|
400
|
+
"name": "Open Terminal at $_GIT",
|
|
401
|
+
"para": [
|
|
383
402
|
"xfce4-terminal",
|
|
384
|
-
"--working-directory=$GIT"
|
|
403
|
+
"--default-working-directory=$GIT"
|
|
385
404
|
]
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
"Open Terminal at $
|
|
389
|
-
[
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
"name": "Open Terminal at $_PATH",
|
|
408
|
+
"para": [
|
|
390
409
|
"xfce4-terminal",
|
|
391
|
-
"--working-directory=$PATH"
|
|
410
|
+
"--default-working-directory=$PATH"
|
|
392
411
|
]
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
"Edit .gitignore at $
|
|
396
|
-
[
|
|
412
|
+
},
|
|
413
|
+
{
|
|
414
|
+
"name": "Edit .gitignore at $_GIT",
|
|
415
|
+
"para": [
|
|
397
416
|
"xed",
|
|
398
417
|
"$GIT/.gitignore"
|
|
399
418
|
]
|
|
400
|
-
|
|
419
|
+
}
|
|
401
420
|
]
|
|
402
421
|
},
|
|
403
422
|
"basic-ctx": {
|
|
404
423
|
"expr": "*",
|
|
405
|
-
"
|
|
406
|
-
|
|
407
|
-
"less $NAME at $
|
|
408
|
-
[
|
|
424
|
+
"changes-file": [
|
|
425
|
+
{
|
|
426
|
+
"name": "less $NAME at $_PATH",
|
|
427
|
+
"para": [
|
|
409
428
|
"xfce4-terminal",
|
|
410
429
|
"-x",
|
|
411
430
|
"less",
|
|
412
431
|
"$FILE"
|
|
413
432
|
]
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
"edit $NAME at $
|
|
417
|
-
[
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"name": "edit $NAME at $_PATH",
|
|
436
|
+
"para": [
|
|
418
437
|
"xed",
|
|
419
438
|
"$FILE"
|
|
420
439
|
]
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
"vi $NAME at $
|
|
424
|
-
[
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
"name": "vi $NAME at $_PATH",
|
|
443
|
+
"para": [
|
|
425
444
|
"xfce4-terminal",
|
|
426
445
|
"-x",
|
|
427
446
|
"vi",
|
|
428
447
|
"$FILE"
|
|
429
448
|
]
|
|
430
|
-
|
|
449
|
+
}
|
|
431
450
|
]
|
|
432
451
|
},
|
|
433
452
|
"spyder-ctx": {
|
|
434
453
|
"expr": "*.py",
|
|
435
|
-
"
|
|
436
|
-
|
|
437
|
-
"spyder python $
|
|
438
|
-
[
|
|
454
|
+
"changes-file": [
|
|
455
|
+
{
|
|
456
|
+
"name": "spyder python $_FILE",
|
|
457
|
+
"para": [
|
|
439
458
|
"~/spyder/.venv/bin/spyder",
|
|
440
459
|
"$FILE"
|
|
441
460
|
]
|
|
442
|
-
|
|
461
|
+
}
|
|
443
462
|
]
|
|
444
463
|
},
|
|
445
464
|
"autopep8-ctx": {
|
|
446
465
|
"expr": "*.py",
|
|
447
|
-
"
|
|
448
|
-
|
|
449
|
-
"autopep8 python $
|
|
450
|
-
[
|
|
451
|
-
"autopep8",
|
|
466
|
+
"changes-file": [
|
|
467
|
+
{
|
|
468
|
+
"name": "autopep8 python $_FILE",
|
|
469
|
+
"para": [
|
|
470
|
+
"~/repo/gitonic/.venv/bin/autopep8",
|
|
452
471
|
"-i",
|
|
453
472
|
"$FILE"
|
|
454
473
|
]
|
|
455
|
-
|
|
474
|
+
}
|
|
456
475
|
]
|
|
457
476
|
},
|
|
458
477
|
"geany-path": {
|
|
@@ -461,14 +480,14 @@ for running on linux with xfce.
|
|
|
461
480
|
"*.cpp",
|
|
462
481
|
"*.h"
|
|
463
482
|
],
|
|
464
|
-
"
|
|
465
|
-
|
|
466
|
-
"geany c $
|
|
467
|
-
[
|
|
483
|
+
"changes-file": [
|
|
484
|
+
{
|
|
485
|
+
"name": "geany c $_FILE",
|
|
486
|
+
"para": [
|
|
468
487
|
"geany",
|
|
469
488
|
"$FILE"
|
|
470
489
|
]
|
|
471
|
-
|
|
490
|
+
}
|
|
472
491
|
]
|
|
473
492
|
},
|
|
474
493
|
"uncrustify-path": {
|
|
@@ -477,10 +496,10 @@ for running on linux with xfce.
|
|
|
477
496
|
"*.cpp",
|
|
478
497
|
"*.h"
|
|
479
498
|
],
|
|
480
|
-
"
|
|
481
|
-
|
|
482
|
-
"uncrustify c $
|
|
483
|
-
[
|
|
499
|
+
"changes-file": [
|
|
500
|
+
{
|
|
501
|
+
"name": "uncrustify c $_FILE",
|
|
502
|
+
"para": [
|
|
484
503
|
"uncrustify",
|
|
485
504
|
"-c",
|
|
486
505
|
"~/.gitonic/uncrustify.cfg",
|
|
@@ -489,28 +508,28 @@ for running on linux with xfce.
|
|
|
489
508
|
"--no-backup",
|
|
490
509
|
"--if-changed"
|
|
491
510
|
]
|
|
492
|
-
|
|
511
|
+
}
|
|
493
512
|
]
|
|
494
513
|
},
|
|
495
514
|
"git-base-tools": {
|
|
496
515
|
"expr": [
|
|
497
516
|
"*"
|
|
498
517
|
],
|
|
499
|
-
"workdir"
|
|
500
|
-
"
|
|
501
|
-
|
|
502
|
-
"gitk $
|
|
503
|
-
[
|
|
504
|
-
"gitk"
|
|
518
|
+
"workdir": "$GIT",
|
|
519
|
+
"changes-all": [
|
|
520
|
+
{
|
|
521
|
+
"name": "gitk $_GIT",
|
|
522
|
+
"para": [
|
|
523
|
+
"gitk"
|
|
505
524
|
]
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
"git gui $
|
|
509
|
-
[
|
|
525
|
+
},
|
|
526
|
+
{
|
|
527
|
+
"name": "git gui $_GIT",
|
|
528
|
+
"para": [
|
|
510
529
|
"git",
|
|
511
|
-
"gui"
|
|
530
|
+
"gui"
|
|
512
531
|
]
|
|
513
|
-
|
|
532
|
+
}
|
|
514
533
|
]
|
|
515
534
|
}
|
|
516
535
|
}
|
|
@@ -533,15 +552,22 @@ at the present time the context menu only works on the underlying file (row) in
|
|
|
533
552
|
there is **no** support for multiple files (selection) as of now.
|
|
534
553
|
|
|
535
554
|
|
|
555
|
+
# related
|
|
556
|
+
|
|
557
|
+
plugin for thonny ide
|
|
558
|
+
[`thonny-gitonic`](https://github.com/kr-g/thonny-gitonic)
|
|
559
|
+
|
|
536
560
|
|
|
537
561
|
# platform
|
|
538
562
|
|
|
539
563
|
tested on python3, and linux
|
|
540
564
|
|
|
541
565
|
|
|
542
|
-
#
|
|
566
|
+
# contribution
|
|
543
567
|
|
|
544
|
-
|
|
568
|
+
any contribution is welcome !
|
|
569
|
+
|
|
570
|
+
please create one issue for each proposal, or merge request.
|
|
545
571
|
|
|
546
572
|
|
|
547
573
|
# installation
|
|
@@ -550,14 +576,21 @@ it is recommented to install gitonic into a
|
|
|
550
576
|
[virtual environment](https://docs.python.org/3/library/venv.html).
|
|
551
577
|
the following script will install gitonic in your home directory (linux).
|
|
552
578
|
|
|
579
|
+
|
|
580
|
+
#!/bin/bash
|
|
581
|
+
|
|
553
582
|
# create virtual environment
|
|
583
|
+
|
|
554
584
|
cd ~
|
|
555
585
|
python3 -m venv gitonic
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
586
|
+
|
|
587
|
+
cd gitonic
|
|
588
|
+
|
|
589
|
+
source ./bin/activate
|
|
590
|
+
|
|
591
|
+
# install gitonic with all pep08 and meld
|
|
592
|
+
|
|
593
|
+
pip3 install gitonic[PEP08,MELD]
|
|
561
594
|
|
|
562
595
|
|
|
563
596
|
this script can be found here
|
|
@@ -679,7 +712,7 @@ following files are used:
|
|
|
679
712
|
|---|---|
|
|
680
713
|
|~/.gitonic/commit.json|the last commit messages show in the combo box|
|
|
681
714
|
|~/.gitonic/config.json|configuration settings|
|
|
682
|
-
|~/.gitonic/
|
|
715
|
+
|~/.gitonic/contextmenu.json|configuration for context menu on changes tab|
|
|
683
716
|
|~/.gitonic/formatter.json|configuration for external formatter tools|
|
|
684
717
|
|~/.gitonic/tracked.json|tracked git repositories|
|
|
685
718
|
|~/.gitonic/socket|internal use|
|
|
@@ -698,9 +731,53 @@ gitonic is released under the following
|
|
|
698
731
|
git logos from [git-scm](https://git-scm.com/downloads/logos)
|
|
699
732
|
|
|
700
733
|
|
|
734
|
+
# support and donations
|
|
735
|
+
|
|
736
|
+
support the further development of `gitonic` with a donation of your choice.
|
|
737
|
+
|
|
738
|
+
[support and donnations](https://github.com/kr-g/gitonic/wiki/Support)
|
|
739
|
+
|
|
740
|
+
thank you !!!
|
|
741
|
+
|
|
701
742
|
|
|
702
743
|
|
|
703
|
-
#
|
|
744
|
+
# CHANGELOG
|
|
745
|
+
|
|
746
|
+
|
|
747
|
+
## version v0.19.0 - ????????
|
|
748
|
+
-
|
|
749
|
+
|
|
750
|
+
|
|
751
|
+
## version v0.18.1 - 20251109
|
|
752
|
+
- patch entry point
|
|
753
|
+
-
|
|
754
|
+
|
|
755
|
+
|
|
756
|
+
## version v0.18.0 - 20251109
|
|
757
|
+
- redesign multi tasking / tk eventloop
|
|
758
|
+
- user interface is now non-blocking
|
|
759
|
+
- multi tasking tested with python 3.12
|
|
760
|
+
- **not yet tested** with python 3.13 / 3.14
|
|
761
|
+
- `gitonic` is released for python3.12 (fixed version)
|
|
762
|
+
- current implementation uses threads to fork `git` processes in the background
|
|
763
|
+
- the main tk eventloop receives the thread results and process this in callbacks
|
|
764
|
+
- read here for detailed information [`tk eventloop`](https://tkdocs.com/tutorial/eventloop.html))
|
|
765
|
+
- ui redesign
|
|
766
|
+
- resizeable main window
|
|
767
|
+
- dropped external font-awesome pip package
|
|
768
|
+
- material design icons included
|
|
769
|
+
- IMPORTANT: new right-mouse context handler `~/.gitonic/contextmenu.json`
|
|
770
|
+
- INCOMPATIBLE to `~/.gitonic/context.json`
|
|
771
|
+
- old context `~/.gitonic/context.json` is NOT supported anymore
|
|
772
|
+
- improved logging
|
|
773
|
+
- filter log for each repo
|
|
774
|
+
- codebase refactored
|
|
775
|
+
- new commandline tools (UNDER CONTSRUCTION - not yet final - dont expect anything!!! - this might be dropped in the future)
|
|
776
|
+
- `gtcd.py`
|
|
777
|
+
- opens a new terminal for a git repo quickly
|
|
778
|
+
- `gtls.py`
|
|
779
|
+
- list all changes for all tracked git repo
|
|
780
|
+
-
|
|
704
781
|
|
|
705
782
|
|
|
706
783
|
## version v0.17.0 - 20250715
|
|
@@ -869,13 +946,13 @@ git logos from [git-scm](https://git-scm.com/downloads/logos)
|
|
|
869
946
|
-
|
|
870
947
|
|
|
871
948
|
|
|
872
|
-
# BACKLOG
|
|
949
|
+
# BACKLOG
|
|
873
950
|
|
|
874
951
|
- documentation
|
|
875
952
|
- testcases?
|
|
876
|
-
- revert changes / git checkout support
|
|
877
|
-
- undo support for unstaged files
|
|
878
|
-
- git restore <file
|
|
953
|
+
- ~~revert changes / git checkout support~~
|
|
954
|
+
- ~~undo support for unstaged files~~
|
|
955
|
+
- ~~git restore <file~~
|
|
879
956
|
- ~~git fetch / merge support~~
|
|
880
957
|
- ~~currently gitonic supports only pull~~
|
|
881
958
|
- git branch support
|
|
@@ -893,47 +970,55 @@ git logos from [git-scm](https://git-scm.com/downloads/logos)
|
|
|
893
970
|
- support also git commit --amend
|
|
894
971
|
- git tag support
|
|
895
972
|
- git stash support (list, show, push, pop/apply, drop, clear)
|
|
896
|
-
- support verbose output in expert mode
|
|
897
|
-
- support flags -v and -vv where applicable
|
|
973
|
+
- ~~support verbose output in expert mode~~
|
|
974
|
+
- ~~support flags -v and -vv where applicable~~
|
|
898
975
|
- settings tabs
|
|
899
976
|
- check for installed git
|
|
900
977
|
- ~~git exe configuration in settings~~
|
|
901
978
|
- check for latest version of gitonic
|
|
902
979
|
-
|
|
903
980
|
- ~~config file for last known config~~
|
|
904
|
-
- diff-tool blocks main screen (see next)
|
|
981
|
+
- ~~diff-tool blocks main screen (see next)~~
|
|
905
982
|
- gui rework
|
|
906
983
|
- theme support
|
|
907
|
-
- resize behavior -> expand
|
|
984
|
+
- ~~resize behavior -> expand~~
|
|
908
985
|
- ~~icons~~
|
|
909
|
-
- grid layout / less floating
|
|
910
|
-
- freezing ui -> see background tasks
|
|
986
|
+
- ~~grid layout / less floating ~~
|
|
987
|
+
- ~~freezing ui -> see background tasks~~
|
|
911
988
|
-
|
|
912
|
-
- background task and event loop
|
|
913
|
-
- use TkCmd also for Cmd runners
|
|
989
|
+
- background task and event loop ~~-> freezing gui when running git utils~~
|
|
990
|
+
- ~~use TkCmd also for Cmd runners~~
|
|
914
991
|
- status bar with running background tasks overview?
|
|
915
|
-
-
|
|
992
|
+
- esc esc handler and shut down
|
|
993
|
+
- currently it terminates all running background tasks
|
|
994
|
+
- option to show extra popup to inform the user regarding running tasks
|
|
916
995
|
- refact for integration in other tools
|
|
917
|
-
- filter git on 'changes' tab
|
|
996
|
+
- ~~filter git on 'changes' tab~~
|
|
918
997
|
- rework logging
|
|
919
998
|
- ~~remove print statements in main~~
|
|
920
|
-
- remove print statements in tile.core
|
|
999
|
+
- ~~remove print statements in tile.core~~
|
|
1000
|
+
- remove print statements
|
|
921
1001
|
- automation / external jobs
|
|
922
1002
|
- ~~black PEP8 support~~
|
|
923
|
-
- desktop integration
|
|
924
|
-
- open shell at repo path
|
|
925
|
-
- open file management too at repo path
|
|
1003
|
+
- ~~desktop integration~~
|
|
1004
|
+
- ~~open shell at repo path~~
|
|
1005
|
+
- ~~open file management too at repo path~~
|
|
926
1006
|
- ~~history of commit texts~~
|
|
927
1007
|
- ~~in combo box~~
|
|
928
1008
|
- git log / show integration?
|
|
929
1009
|
- git error handling
|
|
930
|
-
- switch to log tab after pull
|
|
931
|
-
- logging, use python logger for expert mode output
|
|
1010
|
+
- switch to log tab after pull???
|
|
1011
|
+
- ~~logging, use python logger for expert mode output~~
|
|
932
1012
|
- support for .gitignore
|
|
933
1013
|
- adding single files
|
|
934
|
-
- open .gitignore for editing
|
|
935
|
-
- execute git operations in parallel where possible
|
|
936
|
-
- make expert mode debugging out better (use python logging)
|
|
1014
|
+
- ~~open .gitignore for editing~~
|
|
1015
|
+
- ~~execute git operations in parallel where possible~~
|
|
1016
|
+
- ~~make expert mode debugging out better (use python logging)~~
|
|
1017
|
+
- context menu
|
|
1018
|
+
- less sensitive (disappears to quickly)
|
|
1019
|
+
- multiple row feature
|
|
1020
|
+
- splash screen
|
|
1021
|
+
- new version notification
|
|
937
1022
|
-
|
|
938
1023
|
|
|
939
1024
|
|
|
@@ -964,7 +1049,7 @@ this must be done by checking the log tab manually where all cmdline output goes
|
|
|
964
1049
|
|
|
965
1050
|
---
|
|
966
1051
|
|
|
967
|
-
Copyright (c) 2022 k. goger - https://github.com/kr-g
|
|
1052
|
+
Copyright (c) 2022-2025 k. goger - https://github.com/kr-g
|
|
968
1053
|
|
|
969
1054
|
---
|
|
970
1055
|
|