gitpush-tool 0.3.6__tar.gz → 0.4.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.
Files changed (29) hide show
  1. gitpush_tool-0.4.1/LONG_DESCRIPTION.md +142 -0
  2. gitpush_tool-0.4.1/MANIFEST.in +3 -0
  3. gitpush_tool-0.4.1/PKG-INFO +171 -0
  4. gitpush_tool-0.4.1/README.md +182 -0
  5. gitpush_tool-0.4.1/gitpush/__doc__.py +27 -0
  6. gitpush_tool-0.4.1/gitpush/__init__.py +1 -0
  7. gitpush_tool-0.4.1/gitpush/cli.py +817 -0
  8. gitpush_tool-0.4.1/gitpush/safety.py +781 -0
  9. gitpush_tool-0.4.1/gitpush/status.py +369 -0
  10. gitpush_tool-0.4.1/gitpush_tool.egg-info/PKG-INFO +171 -0
  11. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/gitpush_tool.egg-info/SOURCES.txt +7 -1
  12. gitpush_tool-0.4.1/gitpush_tool.egg-info/entry_points.txt +4 -0
  13. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/setup.py +4 -2
  14. gitpush_tool-0.4.1/tests/test_cli.py +0 -0
  15. gitpush_tool-0.4.1/tests/test_safety.py +0 -0
  16. gitpush_tool-0.4.1/tests/test_status.py +113 -0
  17. gitpush_tool-0.3.6/MANIFEST.in +0 -2
  18. gitpush_tool-0.3.6/PKG-INFO +0 -83
  19. gitpush_tool-0.3.6/README.md +0 -166
  20. gitpush_tool-0.3.6/gitpush/__doc__.py +0 -25
  21. gitpush_tool-0.3.6/gitpush/__init__.py +0 -1
  22. gitpush_tool-0.3.6/gitpush/cli.py +0 -1388
  23. gitpush_tool-0.3.6/gitpush_tool.egg-info/PKG-INFO +0 -83
  24. gitpush_tool-0.3.6/gitpush_tool.egg-info/entry_points.txt +0 -2
  25. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/LICENSE +0 -0
  26. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/gitpush_tool.egg-info/dependency_links.txt +0 -0
  27. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/gitpush_tool.egg-info/top_level.txt +0 -0
  28. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/pyproject.toml +0 -0
  29. {gitpush_tool-0.3.6 → gitpush_tool-0.4.1}/setup.cfg +0 -0
@@ -0,0 +1,142 @@
1
+ # GitPush Tool 🚀
2
+
3
+ [![PyPI version](https://img.shields.io/pypi/v/gitpush-tool.svg)](https://pypi.org/project/gitpush-tool/)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/inevitablegs/gitpush/blob/main/LICENSE)
5
+
6
+ A supercharged Git CLI and safety tool that simplifies repository creation and pushing with intelligent defaults, rich pre-push diffstat inspection (`+++---` lines), and active safeguards against dangerous Git commands.
7
+
8
+ ---
9
+
10
+ ## ✨ Features
11
+
12
+ - **Decision-Support Status Dashboard (`gitpush status`):** Actionable repository overview showing worktree breakdown, commit sync, intelligent next-step recommendations, and a 0-100 Repo Health score.
13
+ - **Pre-Push Safety & Diffstat Preview:** See changed files, line additions/deletions (`+X, -Y`), ahead/behind status, and pending commits before pushing.
14
+ - **Dangerous Git Operation Guard:** Analyzes and protects against risky actions (`reset --hard`, force pushes, deleting unmerged branches, dirty `git clean`, detached HEADs).
15
+ - **Protected Branch Safeguard:** Automatically detects and alerts when pushing or force-pushing to `main`, `master`, `prod`, `release`, or `dev`.
16
+ - **One-Command GitHub Repo Creation:** Initialize Git, create a remote GitHub repo, and push in a single step via GitHub CLI (`gh`).
17
+ - **Safe Force Pushing:** Uses `--force-with-lease` by default to avoid overwriting teammate commits.
18
+ - **Dry-Run Mode:** Preview your push inspection without modifying anything.
19
+ - **Non-Interactive & CI Friendly:** Skip prompts with `-y` or `--yes`.
20
+
21
+ ---
22
+
23
+ ## 📊 Decision-Support Status Dashboard (`gitpush status`)
24
+
25
+ ```text
26
+ Repository: my-project
27
+ Branch: feature/payment
28
+ Tracking: origin/feature/payment
29
+
30
+ WORKTREE
31
+ ────────────────────────
32
+ Modified 4
33
+ Added 2
34
+ Deleted 1
35
+ Untracked 3
36
+ Line Changes +142, -18
37
+
38
+ COMMITS
39
+ ────────────────────────
40
+ Ahead 3
41
+ Behind 1
42
+
43
+ PUSH / STATUS
44
+ ────────────────────────
45
+ ⚠ Remote has 1 commit(s) you don't have locally.
46
+
47
+ Recommended:
48
+ git pull --rebase
49
+ gitpush "Commit message"
50
+
51
+ Health:
52
+ 82/100 [████████░░] Good (Minor Action Needed)
53
+ ```
54
+
55
+ ---
56
+
57
+ ## 🛡️ Pre-Push Warning & Inspection
58
+
59
+ Whenever you run `gitpush`, you get an instant, clear breakdown of your repository state:
60
+
61
+ ```text
62
+ ═══════════════════════════════════════════════════════════════
63
+ 🚀 GITPUSH PRE-PUSH INSPECTION & SUMMARY
64
+ ═══════════════════════════════════════════════════════════════
65
+
66
+ Repository: my-project (/Users/username/Projects/my-project)
67
+ Target Branch: main ⚠️ [PROTECTED BRANCH] ──> origin/main
68
+ Sync Status: Ahead: 2 commit(s), Behind: 0 commit(s)
69
+ Action: Commit: 'Add user authentication flow'
70
+
71
+ Warnings:
72
+ ⚠️ Pushing directly to protected branch 'main'.
73
+
74
+ Changed Files (3 file(s), +84 / -12):
75
+ M src/auth.py (+65, -8)
76
+ M README.md (+19, -4)
77
+ ?? config/auth.json (+12 lines, untracked)
78
+
79
+ Pending Commits to Push (2):
80
+ • 8f3d1a2 Initial auth scaffold
81
+ • 4e9c7b1 Implement JWT token verification
82
+ ═══════════════════════════════════════════════════════════════
83
+
84
+ Continue? [y/N]:
85
+ ```
86
+
87
+ ---
88
+
89
+ ## 🛑 Dangerous Command Guard
90
+
91
+ Use `gitpush guard <command>` (or `gitpush-guard <command>`) before executing risky Git operations:
92
+
93
+ ```text
94
+ Command: [WARNING ⚠️]
95
+ git reset --hard HEAD~5
96
+
97
+ Changes that may be lost:
98
+ 5 commit(s)
99
+ 12 modified/staged file(s)
100
+
101
+ Risks & Warnings:
102
+ ⚠️ All uncommitted changes in tracked files will be permanently discarded.
103
+ ⚠️ 12 uncommitted modified/staged file(s) will be lost immediately.
104
+ ⚠️ 5 commit(s) will be unlinked from current branch HEAD.
105
+
106
+ Repository:
107
+ my-project
108
+
109
+ Continue? [y/N]:
110
+ ```
111
+
112
+ ### What Guard Detects:
113
+ - **`reset --hard`**: Identifies uncommitted files and commits that will be orphaned.
114
+ - **`force push`**: Detects remote overwrite risks and protected branch overrides.
115
+ - **`deleting branches`**: Identifies unmerged commits that would be lost.
116
+ - **`cleaning untracked files`**: Warns of files/directories `git clean -fd` will permanently delete.
117
+ - **`checkout / restore`**: Flags uncommitted modifications about to be discarded.
118
+ - **`rebasing with uncommitted work`**: Warns of dirty working trees before rebase conflicts occur.
119
+ - **`pushing to protected branches`**: Direct pushes to `main`, `master`, `prod`, `dev`, etc.
120
+ - **`detached HEAD situations`**: Warns when working or committing on detached HEADs.
121
+
122
+ ---
123
+
124
+ ## 🛠️ Usage & Commands
125
+
126
+ | Command | Description |
127
+ |---|---|
128
+ | `gitpush "Commit message"` | Stages all changes, previews diffs, commits, and pushes. |
129
+ | `gitpush` | Pushes staged/unpushed changes with safety preview. |
130
+ | `gitpush -y` | Pushes immediately without confirmation prompt. |
131
+ | `gitpush --dry-run` | Shows the pre-push inspection and exits without changes. |
132
+ | `gitpush --force` | Safe force push using `--force-with-lease`. |
133
+ | `gitpush --tags` | Pushes all local tags. |
134
+ | `gitpush guard <git command>` | Inspects and guards any dangerous Git command. |
135
+ | `gitpush --init` | Initializes Git repo and creates default `.gitignore`. |
136
+ | `gitpush --new-repo <name>` | Creates a new GitHub repo and pushes in one step. |
137
+
138
+ ---
139
+
140
+ ## 📄 License
141
+
142
+ MIT License. See [LICENSE](https://github.com/inevitablegs/gitpush/blob/main/LICENSE) for details.
@@ -0,0 +1,3 @@
1
+ include LICENSE
2
+ include README.md
3
+ include LONG_DESCRIPTION.md
@@ -0,0 +1,171 @@
1
+ Metadata-Version: 2.4
2
+ Name: gitpush-tool
3
+ Version: 0.4.1
4
+ Summary: Supercharged Git push tool with automatic GitHub repo creation and pushing
5
+ Home-page: https://github.com/inevitablegs/gitpush
6
+ Author: Ganesh Sonawane
7
+ Author-email: sonawaneganu3101@gmail.com
8
+ License: MIT
9
+ Project-URL: Documentation, https://github.com/inevitablegs/gitpush
10
+ Project-URL: Source, https://github.com/inevitablegs/gitpush
11
+ Project-URL: Tracker, https://github.com/inevitablegs/gitpush/issues
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Requires-Python: >=3.6
16
+ Description-Content-Type: text/markdown
17
+ License-File: LICENSE
18
+ Dynamic: author
19
+ Dynamic: author-email
20
+ Dynamic: classifier
21
+ Dynamic: description
22
+ Dynamic: description-content-type
23
+ Dynamic: home-page
24
+ Dynamic: license
25
+ Dynamic: license-file
26
+ Dynamic: project-url
27
+ Dynamic: requires-python
28
+ Dynamic: summary
29
+
30
+ # GitPush Tool 🚀
31
+
32
+ [![PyPI version](https://img.shields.io/pypi/v/gitpush-tool.svg)](https://pypi.org/project/gitpush-tool/)
33
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/inevitablegs/gitpush/blob/main/LICENSE)
34
+
35
+ A supercharged Git CLI and safety tool that simplifies repository creation and pushing with intelligent defaults, rich pre-push diffstat inspection (`+++---` lines), and active safeguards against dangerous Git commands.
36
+
37
+ ---
38
+
39
+ ## ✨ Features
40
+
41
+ - **Decision-Support Status Dashboard (`gitpush status`):** Actionable repository overview showing worktree breakdown, commit sync, intelligent next-step recommendations, and a 0-100 Repo Health score.
42
+ - **Pre-Push Safety & Diffstat Preview:** See changed files, line additions/deletions (`+X, -Y`), ahead/behind status, and pending commits before pushing.
43
+ - **Dangerous Git Operation Guard:** Analyzes and protects against risky actions (`reset --hard`, force pushes, deleting unmerged branches, dirty `git clean`, detached HEADs).
44
+ - **Protected Branch Safeguard:** Automatically detects and alerts when pushing or force-pushing to `main`, `master`, `prod`, `release`, or `dev`.
45
+ - **One-Command GitHub Repo Creation:** Initialize Git, create a remote GitHub repo, and push in a single step via GitHub CLI (`gh`).
46
+ - **Safe Force Pushing:** Uses `--force-with-lease` by default to avoid overwriting teammate commits.
47
+ - **Dry-Run Mode:** Preview your push inspection without modifying anything.
48
+ - **Non-Interactive & CI Friendly:** Skip prompts with `-y` or `--yes`.
49
+
50
+ ---
51
+
52
+ ## 📊 Decision-Support Status Dashboard (`gitpush status`)
53
+
54
+ ```text
55
+ Repository: my-project
56
+ Branch: feature/payment
57
+ Tracking: origin/feature/payment
58
+
59
+ WORKTREE
60
+ ────────────────────────
61
+ Modified 4
62
+ Added 2
63
+ Deleted 1
64
+ Untracked 3
65
+ Line Changes +142, -18
66
+
67
+ COMMITS
68
+ ────────────────────────
69
+ Ahead 3
70
+ Behind 1
71
+
72
+ PUSH / STATUS
73
+ ────────────────────────
74
+ ⚠ Remote has 1 commit(s) you don't have locally.
75
+
76
+ Recommended:
77
+ git pull --rebase
78
+ gitpush "Commit message"
79
+
80
+ Health:
81
+ 82/100 [████████░░] Good (Minor Action Needed)
82
+ ```
83
+
84
+ ---
85
+
86
+ ## 🛡️ Pre-Push Warning & Inspection
87
+
88
+ Whenever you run `gitpush`, you get an instant, clear breakdown of your repository state:
89
+
90
+ ```text
91
+ ═══════════════════════════════════════════════════════════════
92
+ 🚀 GITPUSH PRE-PUSH INSPECTION & SUMMARY
93
+ ═══════════════════════════════════════════════════════════════
94
+
95
+ Repository: my-project (/Users/username/Projects/my-project)
96
+ Target Branch: main ⚠️ [PROTECTED BRANCH] ──> origin/main
97
+ Sync Status: Ahead: 2 commit(s), Behind: 0 commit(s)
98
+ Action: Commit: 'Add user authentication flow'
99
+
100
+ Warnings:
101
+ ⚠️ Pushing directly to protected branch 'main'.
102
+
103
+ Changed Files (3 file(s), +84 / -12):
104
+ M src/auth.py (+65, -8)
105
+ M README.md (+19, -4)
106
+ ?? config/auth.json (+12 lines, untracked)
107
+
108
+ Pending Commits to Push (2):
109
+ • 8f3d1a2 Initial auth scaffold
110
+ • 4e9c7b1 Implement JWT token verification
111
+ ═══════════════════════════════════════════════════════════════
112
+
113
+ Continue? [y/N]:
114
+ ```
115
+
116
+ ---
117
+
118
+ ## 🛑 Dangerous Command Guard
119
+
120
+ Use `gitpush guard <command>` (or `gitpush-guard <command>`) before executing risky Git operations:
121
+
122
+ ```text
123
+ Command: [WARNING ⚠️]
124
+ git reset --hard HEAD~5
125
+
126
+ Changes that may be lost:
127
+ 5 commit(s)
128
+ 12 modified/staged file(s)
129
+
130
+ Risks & Warnings:
131
+ ⚠️ All uncommitted changes in tracked files will be permanently discarded.
132
+ ⚠️ 12 uncommitted modified/staged file(s) will be lost immediately.
133
+ ⚠️ 5 commit(s) will be unlinked from current branch HEAD.
134
+
135
+ Repository:
136
+ my-project
137
+
138
+ Continue? [y/N]:
139
+ ```
140
+
141
+ ### What Guard Detects:
142
+ - **`reset --hard`**: Identifies uncommitted files and commits that will be orphaned.
143
+ - **`force push`**: Detects remote overwrite risks and protected branch overrides.
144
+ - **`deleting branches`**: Identifies unmerged commits that would be lost.
145
+ - **`cleaning untracked files`**: Warns of files/directories `git clean -fd` will permanently delete.
146
+ - **`checkout / restore`**: Flags uncommitted modifications about to be discarded.
147
+ - **`rebasing with uncommitted work`**: Warns of dirty working trees before rebase conflicts occur.
148
+ - **`pushing to protected branches`**: Direct pushes to `main`, `master`, `prod`, `dev`, etc.
149
+ - **`detached HEAD situations`**: Warns when working or committing on detached HEADs.
150
+
151
+ ---
152
+
153
+ ## 🛠️ Usage & Commands
154
+
155
+ | Command | Description |
156
+ |---|---|
157
+ | `gitpush "Commit message"` | Stages all changes, previews diffs, commits, and pushes. |
158
+ | `gitpush` | Pushes staged/unpushed changes with safety preview. |
159
+ | `gitpush -y` | Pushes immediately without confirmation prompt. |
160
+ | `gitpush --dry-run` | Shows the pre-push inspection and exits without changes. |
161
+ | `gitpush --force` | Safe force push using `--force-with-lease`. |
162
+ | `gitpush --tags` | Pushes all local tags. |
163
+ | `gitpush guard <git command>` | Inspects and guards any dangerous Git command. |
164
+ | `gitpush --init` | Initializes Git repo and creates default `.gitignore`. |
165
+ | `gitpush --new-repo <name>` | Creates a new GitHub repo and pushes in one step. |
166
+
167
+ ---
168
+
169
+ ## 📄 License
170
+
171
+ MIT License. See [LICENSE](https://github.com/inevitablegs/gitpush/blob/main/LICENSE) for details.
@@ -0,0 +1,182 @@
1
+ # GitPush Tool 🚀
2
+
3
+ [![PyPI version](https://img.shields.io/pypi/v/gitpush-tool.svg)](https://pypi.org/project/gitpush-tool/)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
5
+
6
+ A supercharged Git CLI and safety tool that simplifies repository creation and pushing with intelligent defaults, rich pre-push diffstat inspection (`+++---` lines), and active safeguards against dangerous Git commands.
7
+
8
+ ---
9
+
10
+ ## ✨ Features
11
+
12
+ - **Decision-Support Status Dashboard (`gitpush status`):** Actionable repository overview showing worktree breakdown, commit sync, intelligent next-step recommendations, and a 0-100 Repo Health score.
13
+ - **Pre-Push Safety & Diffstat Preview:** See changed files, line additions/deletions (`+X, -Y`), ahead/behind status, and pending commits before pushing.
14
+ - **Dangerous Git Operation Guard:** Analyzes and protects against risky actions (`reset --hard`, force pushes, deleting unmerged branches, dirty `git clean`, detached HEADs).
15
+ - **Protected Branch Safeguard:** Automatically detects and alerts when pushing or force-pushing to `main`, `master`, `prod`, `release`, or `dev`.
16
+ - **One-Command GitHub Repo Creation:** Initialize Git, create a remote GitHub repo, and push in a single step via GitHub CLI (`gh`).
17
+ - **Safe Force Pushing:** Uses `--force-with-lease` by default to avoid overwriting teammate commits.
18
+ - **Dry-Run Mode:** Preview your push inspection without modifying anything.
19
+ - **Non-Interactive & CI Friendly:** Skip prompts with `-y` or `--yes`.
20
+
21
+ ---
22
+
23
+ ## 📦 Installation
24
+
25
+ ```bash
26
+ pip install gitpush-tool
27
+ ```
28
+
29
+ ---
30
+
31
+ ## 📊 Decision-Support Status Dashboard (`gitpush status`)
32
+
33
+ Instead of raw, cryptic Git output, `gitpush status` gives you structured decision support:
34
+
35
+ ```text
36
+ Repository: my-project
37
+ Branch: feature/payment
38
+ Tracking: origin/feature/payment
39
+
40
+ WORKTREE
41
+ ────────────────────────
42
+ Modified 4
43
+ Added 2
44
+ Deleted 1
45
+ Untracked 3
46
+ Line Changes +142, -18
47
+
48
+ COMMITS
49
+ ────────────────────────
50
+ Ahead 3
51
+ Behind 1
52
+
53
+ PUSH / STATUS
54
+ ────────────────────────
55
+ ⚠ Remote has 1 commit(s) you don't have locally.
56
+
57
+ Recommended:
58
+ git pull --rebase
59
+ gitpush "Commit message"
60
+
61
+ Health:
62
+ 82/100 [████████░░] Good (Minor Action Needed)
63
+ ```
64
+
65
+ ---
66
+
67
+ ## 🛡️ Pre-Push Warning & Inspection
68
+
69
+ Whenever you run `gitpush`, you get an instant, clear breakdown of your repository state:
70
+
71
+ ```text
72
+ ═══════════════════════════════════════════════════════════════
73
+ 🚀 GITPUSH PRE-PUSH INSPECTION & SUMMARY
74
+ ═══════════════════════════════════════════════════════════════
75
+
76
+ Repository: my-project (/Users/username/Projects/my-project)
77
+ Target Branch: main ⚠️ [PROTECTED BRANCH] ──> origin/main
78
+ Sync Status: Ahead: 2 commit(s), Behind: 0 commit(s)
79
+ Action: Commit: 'Add user authentication flow'
80
+
81
+ Warnings:
82
+ ⚠️ Pushing directly to protected branch 'main'.
83
+
84
+ Changed Files (3 file(s), +84 / -12):
85
+ M src/auth.py (+65, -8)
86
+ M README.md (+19, -4)
87
+ ?? config/auth.json (+12 lines, untracked)
88
+
89
+ Pending Commits to Push (2):
90
+ • 8f3d1a2 Initial auth scaffold
91
+ • 4e9c7b1 Implement JWT token verification
92
+ ═══════════════════════════════════════════════════════════════
93
+
94
+ Continue? [y/N]:
95
+ ```
96
+
97
+ ---
98
+
99
+ ## 🛑 Dangerous Command Guard
100
+
101
+ Use `gitpush guard <command>` (or `gitpush-guard <command>`) before executing risky Git operations:
102
+
103
+ ### 1. Hard Reset (`reset --hard`)
104
+ Detects uncommitted modifications and unlinked commits before you lose them:
105
+
106
+ ```text
107
+ Command: [WARNING ⚠️]
108
+ git reset --hard HEAD~5
109
+
110
+ Changes that may be lost:
111
+ 5 commit(s)
112
+ 12 modified/staged file(s)
113
+
114
+ Risks & Warnings:
115
+ ⚠️ All uncommitted changes in tracked files will be permanently discarded.
116
+ ⚠️ 12 uncommitted modified/staged file(s) will be lost immediately.
117
+ ⚠️ 5 commit(s) will be unlinked from current branch HEAD.
118
+
119
+ Commits that will become unreachable:
120
+ • cbc4db7 Add billing webhooks
121
+ • 02bd1c5 Update stripe integration
122
+ • 9033dd9 Fix invoice generator
123
+ • a8eb29a Refactor customer portal
124
+ • 97fd9b4 Update dependencies
125
+
126
+ Repository:
127
+ my-project
128
+
129
+ Continue? [y/N]:
130
+ ```
131
+
132
+ ### 2. Guard Detects:
133
+ - **`reset --hard`**: Identifies uncommitted files and commits that will be orphaned.
134
+ - **`force push`**: Detects remote overwrite risks and protected branch overrides.
135
+ - **`deleting branches`**: Identifies unmerged commits that would be lost.
136
+ - **`cleaning untracked files`**: Warns of files/directories `git clean -fd` will permanently delete.
137
+ - **`checkout / restore`**: Flags uncommitted modifications about to be discarded.
138
+ - **`rebasing with uncommitted work`**: Warns of dirty working trees before rebase conflicts occur.
139
+ - **`pushing to protected branches`**: Direct pushes to `main`, `master`, `prod`, `dev`, etc.
140
+ - **`detached HEAD situations`**: Warns when working or committing on detached HEADs.
141
+
142
+ ---
143
+
144
+ ## 🛠️ Usage & Commands
145
+
146
+ | Command | Description |
147
+ |---|---|
148
+ | `gitpush "Commit message"` | Stages all changes, previews diffs, commits, and pushes. |
149
+ | `gitpush` | Pushes staged/unpushed changes with safety preview. |
150
+ | `gitpush -y` | Pushes immediately without confirmation prompt. |
151
+ | `gitpush --dry-run` | Shows the pre-push inspection and exits without changes. |
152
+ | `gitpush --force` | Safe force push using `--force-with-lease`. |
153
+ | `gitpush --tags` | Pushes all local tags. |
154
+ | `gitpush guard <git command>` | Inspects and guards any dangerous Git command. |
155
+ | `gitpush --init` | Initializes Git repo and creates default `.gitignore`. |
156
+ | `gitpush --new-repo <name>` | Creates a new GitHub repo and pushes in one step. |
157
+
158
+ ---
159
+
160
+ ## 🧠 New Repository Workflow
161
+
162
+ Create and publish a repository to GitHub in a single command:
163
+
164
+ ```bash
165
+ # Public repo
166
+ gitpush "Initial commit" --new-repo my-awesome-project
167
+
168
+ # Private repo with description
169
+ gitpush "Initial commit" --new-repo secret-app --private --description "Internal tool"
170
+ ```
171
+
172
+ ---
173
+
174
+ ## 🤝 Contributing
175
+
176
+ Contributions are welcome! Please feel free to open issues or submit pull requests on [GitHub](https://github.com/inevitablegs/gitpush).
177
+
178
+ ---
179
+
180
+ ## 📄 License
181
+
182
+ MIT © [Ganesh Sonawane](https://github.com/inevitablegs)
@@ -0,0 +1,27 @@
1
+ """
2
+ GitPush Tool - Supercharged Git CLI (v0.4.1)
3
+
4
+ A powerful command-line tool that simplifies Git operations with automatic GitHub
5
+ repository creation, pre-push diffstat inspection, and dangerous operation safeguards.
6
+
7
+ Key Features:
8
+ • Pre-push diffstat line changes (+/-) and branch sync inspection
9
+ • Dangerous operation guard (reset --hard, force push, branch delete, clean, dirty rebase)
10
+ • Protected branch & detached HEAD detection
11
+ • One-command GitHub repo creation
12
+ • Automatic Git initialization
13
+ • Safe force pushing (--force-with-lease)
14
+ • GitHub CLI integration
15
+
16
+ Basic Usage:
17
+ gitpush status # Decision-support repository status
18
+ gitpush "Commit message" # Standard push with preview
19
+ gitpush "Commit message" -y # Push without confirmation prompt
20
+ gitpush --dry-run # Preview changes without pushing
21
+ gitpush guard git reset --hard HEAD~5 # Guard dangerous Git commands
22
+ gitpush --new-repo project-name # Create new repo
23
+ gitpush --force # Safe force push
24
+
25
+ Documentation: https://github.com/inevitablegs/gitpush
26
+ Issues: https://github.com/inevitablegs/gitpush/issues
27
+ """
@@ -0,0 +1 @@
1
+ __version__ = "0.4.1"