git-auto-pro 1.1.0__tar.gz → 2.0.0__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 (68) hide show
  1. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/.editorconfig +0 -0
  2. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/.gitattributes +0 -0
  3. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/.gitignore +0 -0
  4. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/.pre-commit-config.yaml +0 -0
  5. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/CHANGELOG.md +0 -0
  6. git_auto_pro-2.0.0/CONTRIBUTING.md +444 -0
  7. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/PKG-INFO +65 -6
  8. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/README.md +60 -2
  9. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/SETUP_GUIDE.md +1 -1
  10. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/docs/api.md +0 -0
  11. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/docs/troubleshooting.md +3 -3
  12. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/examples/advanced_usage.py +0 -0
  13. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/examples/basic_usage.py +0 -0
  14. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/__init__.py +1 -1
  15. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/backup.py +0 -0
  16. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/cli.py +144 -4
  17. git_auto_pro-2.0.0/git_auto_pro/commands/__init__.py +1 -0
  18. git_auto_pro-2.0.0/git_auto_pro/commands/doctor.py +135 -0
  19. git_auto_pro-2.0.0/git_auto_pro/commands/release.py +259 -0
  20. git_auto_pro-2.0.0/git_auto_pro/commands/safe_flow.py +145 -0
  21. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/config.py +4 -0
  22. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/git_commands.py +103 -2
  23. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/github.py +52 -11
  24. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/github_issues.py +15 -3
  25. git_auto_pro-2.0.0/git_auto_pro/github_pr/__init__.py +1 -0
  26. git_auto_pro-2.0.0/git_auto_pro/github_pr/pr_manager.py +254 -0
  27. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/gitignore_manager.py +0 -0
  28. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/__init__.py +0 -0
  29. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/github_templates.py +0 -0
  30. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/gitignore.py +0 -0
  31. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/hooks.py +0 -0
  32. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/license.py +0 -0
  33. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/project.py +0 -0
  34. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/readme.py +0 -0
  35. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/templates.py +0 -0
  36. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro/scaffolding/workflows.py +0 -0
  37. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/PKG-INFO +65 -6
  38. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/SOURCES.txt +11 -3
  39. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/pyproject.toml +4 -3
  40. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/requirements-dev.txt +0 -0
  41. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/requirements.txt +0 -0
  42. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/scripts/build.sh +0 -0
  43. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/scripts/install.sh +0 -0
  44. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/scripts/test.sh +0 -0
  45. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/setup.py +5 -5
  46. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/__init__.py +0 -0
  47. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/conftest.py +0 -0
  48. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_cli.py +0 -0
  49. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_config.py +0 -0
  50. git_auto_pro-2.0.0/tests/test_doctor.py +77 -0
  51. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_github.py +0 -0
  52. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_github_issues.py +0 -0
  53. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_gitignore_manager.py +0 -0
  54. git_auto_pro-2.0.0/tests/test_release.py +132 -0
  55. git_auto_pro-2.0.0/tests/test_safe_flow.py +93 -0
  56. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_scaffolding.py +0 -0
  57. git_auto_pro-1.1.0/CONTRIBUTING.md → git_auto_pro-2.0.0/tests/test_undo.py +0 -0
  58. git_auto_pro-1.1.0/COMPLETE_FILE_LIST.md +0 -253
  59. git_auto_pro-1.1.0/PROJECT_CHECKLIST.md +0 -0
  60. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/LICENSE +0 -0
  61. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/docs/examples.md +0 -0
  62. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/docs/usage.md +0 -0
  63. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/dependency_links.txt +0 -0
  64. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/entry_points.txt +0 -0
  65. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/requires.txt +0 -0
  66. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/git_auto_pro.egg-info/top_level.txt +0 -0
  67. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/setup.cfg +0 -0
  68. {git_auto_pro-1.1.0 → git_auto_pro-2.0.0}/tests/test_git_commands.py +0 -0
File without changes
File without changes
File without changes
@@ -0,0 +1,444 @@
1
+ # Contributing to git-auto-pro
2
+
3
+ First off, thank you for considering contributing to git-auto-pro! It's people like you that make git-auto-pro such a great tool.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Code of Conduct](#code-of-conduct)
8
+ - [Getting Started](#getting-started)
9
+ - [How Can I Contribute?](#how-can-i-contribute)
10
+ - [Development Setup](#development-setup)
11
+ - [Coding Standards](#coding-standards)
12
+ - [Commit Guidelines](#commit-guidelines)
13
+ - [Pull Request Process](#pull-request-process)
14
+ - [Reporting Bugs](#reporting-bugs)
15
+ - [Suggesting Enhancements](#suggesting-enhancements)
16
+ - [Community](#community)
17
+
18
+ ## Code of Conduct
19
+
20
+ This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers.
21
+
22
+ ### Our Standards
23
+
24
+ - **Be respectful**: Treat everyone with respect and kindness
25
+ - **Be collaborative**: Work together towards the common goal
26
+ - **Be inclusive**: Welcome diverse perspectives and backgrounds
27
+ - **Be patient**: Remember that everyone has different skill levels
28
+ - **Be constructive**: Provide helpful feedback and suggestions
29
+
30
+ ## Getting Started
31
+
32
+ ### Prerequisites
33
+
34
+ Before you begin, ensure you have:
35
+ - Git installed on your system
36
+ - A GitHub account
37
+ - Basic understanding of version control concepts
38
+ - Familiarity with the command line
39
+
40
+ ### First Time Setup
41
+
42
+ 1. **Fork the repository**: Click the 'Fork' button at the top right of the repository page
43
+ 2. **Clone your fork**:
44
+ ```bash
45
+ git clone https://github.com/YOUR-USERNAME/git-auto-pro.git
46
+ cd git-auto-pro
47
+ ```
48
+ 3. **Add upstream remote**:
49
+ ```bash
50
+ git remote add upstream https://github.com/HimanshuSingh-966/git-auto-pro.git
51
+ ```
52
+ 4. **Verify remotes**:
53
+ ```bash
54
+ git remote -v
55
+ ```
56
+
57
+ ## How Can I Contribute?
58
+
59
+ ### Types of Contributions
60
+
61
+ We welcome various types of contributions:
62
+
63
+ - **Code contributions**: Bug fixes, new features, performance improvements
64
+ - **Documentation**: Improve README, add examples, write tutorials
65
+ - **Testing**: Write tests, report bugs, verify fixes
66
+ - **Design**: UI/UX improvements, logo design, graphics
67
+ - **Community**: Answer questions, help others, spread the word
68
+
69
+ ### Good First Issues
70
+
71
+ Look for issues labeled `good first issue` or `help wanted`. These are great starting points for new contributors.
72
+
73
+ ## Development Setup
74
+
75
+ ### Installation
76
+
77
+ 1. **Install dependencies** (if applicable):
78
+ ```bash
79
+ # Add installation commands specific to your project
80
+ npm install
81
+ # or
82
+ pip install -r requirements.txt
83
+ ```
84
+
85
+ 2. **Configure development environment**:
86
+ ```bash
87
+ # Add any environment setup commands
88
+ cp .env.example .env
89
+ ```
90
+
91
+ 3. **Run tests** to ensure everything is working:
92
+ ```bash
93
+ # Add test commands
94
+ npm test
95
+ # or
96
+ pytest
97
+ ```
98
+
99
+ ### Building the Project
100
+
101
+ ```bash
102
+ # Add build commands
103
+ npm run build
104
+ # or
105
+ python setup.py build
106
+ ```
107
+
108
+ ## Coding Standards
109
+
110
+ ### General Guidelines
111
+
112
+ - Write clear, readable, and maintainable code
113
+ - Follow the existing code style and patterns
114
+ - Comment complex logic and non-obvious solutions
115
+ - Keep functions small and focused on a single task
116
+ - Use meaningful variable and function names
117
+
118
+ ### Language-Specific Standards
119
+
120
+ **Python**:
121
+ - Follow PEP 8 style guide
122
+ - Use type hints where appropriate
123
+ - Write docstrings for functions and classes
124
+
125
+ **JavaScript**:
126
+ - Use ES6+ features
127
+ - Follow Airbnb style guide
128
+ - Use async/await for asynchronous operations
129
+
130
+ ### Code Formatting
131
+
132
+ We use automated formatters to maintain consistent code style:
133
+
134
+ ```bash
135
+ # Python
136
+ black .
137
+ flake8
138
+
139
+ # JavaScript
140
+ npm run lint
141
+ npm run format
142
+ ```
143
+
144
+ ## Commit Guidelines
145
+
146
+ We follow the [Conventional Commits](https://www.conventionalcommits.org/) specification for commit messages.
147
+
148
+ ### Commit Message Format
149
+
150
+ ```
151
+ <type>(<scope>): <subject>
152
+
153
+ <body>
154
+
155
+ <footer>
156
+ ```
157
+
158
+ ### Types
159
+
160
+ - `feat`: A new feature
161
+ - `fix`: A bug fix
162
+ - `docs`: Documentation only changes
163
+ - `style`: Changes that don't affect code meaning (formatting, etc.)
164
+ - `refactor`: Code changes that neither fix bugs nor add features
165
+ - `perf`: Performance improvements
166
+ - `test`: Adding or updating tests
167
+ - `chore`: Changes to build process or auxiliary tools
168
+
169
+ ### Examples
170
+
171
+ ```bash
172
+ feat(cli): add support for auto-commit scheduling
173
+
174
+ Implemented a new scheduling feature that allows users to
175
+ configure automatic commits at specified intervals.
176
+
177
+ Closes #123
178
+ ```
179
+
180
+ ```bash
181
+ fix(auth): resolve token expiration issue
182
+
183
+ Fixed a bug where authentication tokens would expire
184
+ prematurely, causing users to be logged out unexpectedly.
185
+
186
+ Fixes #456
187
+ ```
188
+
189
+ ### Commit Best Practices
190
+
191
+ - Use the imperative mood ("Add feature" not "Added feature")
192
+ - Keep the subject line under 50 characters
193
+ - Wrap the body at 72 characters
194
+ - Reference issues and pull requests in the footer
195
+ - Separate subject from body with a blank line
196
+
197
+ ## Pull Request Process
198
+
199
+ ### Before Submitting
200
+
201
+ 1. **Update your fork**:
202
+ ```bash
203
+ git fetch upstream
204
+ git checkout main
205
+ git merge upstream/main
206
+ ```
207
+
208
+ 2. **Create a feature branch**:
209
+ ```bash
210
+ git checkout -b feature/your-feature-name
211
+ ```
212
+
213
+ 3. **Make your changes**:
214
+ - Write code
215
+ - Add tests
216
+ - Update documentation
217
+ - Ensure all tests pass
218
+
219
+ 4. **Commit your changes**:
220
+ ```bash
221
+ git add .
222
+ git commit -m "feat: your feature description"
223
+ ```
224
+
225
+ 5. **Push to your fork**:
226
+ ```bash
227
+ git push origin feature/your-feature-name
228
+ ```
229
+
230
+ ### Submitting a Pull Request
231
+
232
+ 1. Go to the original repository on GitHub
233
+ 2. Click "New Pull Request"
234
+ 3. Select your fork and branch
235
+ 4. Fill out the PR template with:
236
+ - Clear description of changes
237
+ - Related issue numbers
238
+ - Screenshots (if applicable)
239
+ - Testing steps
240
+
241
+ ### PR Guidelines
242
+
243
+ - **One feature per PR**: Keep PRs focused on a single feature or fix
244
+ - **Update documentation**: Ensure docs reflect your changes
245
+ - **Write tests**: Add tests for new features and bug fixes
246
+ - **Follow code style**: Maintain consistent formatting
247
+ - **Resolve conflicts**: Rebase if your branch is behind main
248
+ - **Be responsive**: Address review comments promptly
249
+
250
+ ### PR Review Process
251
+
252
+ 1. Maintainers will review your PR within a few days
253
+ 2. Address any requested changes
254
+ 3. Once approved, a maintainer will merge your PR
255
+ 4. Celebrate! 🎉 You're now a contributor!
256
+
257
+ ### After Your PR is Merged
258
+
259
+ - Delete your feature branch:
260
+ ```bash
261
+ git branch -d feature/your-feature-name
262
+ git push origin --delete feature/your-feature-name
263
+ ```
264
+ - Update your local main branch:
265
+ ```bash
266
+ git checkout main
267
+ git pull upstream main
268
+ ```
269
+
270
+ ## Reporting Bugs
271
+
272
+ ### Before Submitting a Bug Report
273
+
274
+ - Check the [existing issues](https://github.com/HimanshuSingh-966/git-auto-pro/issues) to avoid duplicates
275
+ - Verify you're using the latest version
276
+ - Try to reproduce the issue with minimal configuration
277
+ - Collect relevant information (logs, screenshots, error messages)
278
+
279
+ ### How to Submit a Bug Report
280
+
281
+ Create an issue with the following information:
282
+
283
+ **Title**: Clear, descriptive summary
284
+
285
+ **Description**:
286
+ - Expected behavior
287
+ - Actual behavior
288
+ - Steps to reproduce
289
+ - System information (OS, version, etc.)
290
+ - Screenshots or error logs (if applicable)
291
+
292
+ **Example**:
293
+
294
+ ```markdown
295
+ **Environment:**
296
+ - OS: Ubuntu 22.04
297
+ - Version: v1.2.3
298
+ - Git version: 2.39.0
299
+
300
+ **Steps to Reproduce:**
301
+ 1. Run `git-auto-pro init`
302
+ 2. Configure with X settings
303
+ 3. Execute command Y
304
+
305
+ **Expected Behavior:**
306
+ The tool should automatically commit changes
307
+
308
+ **Actual Behavior:**
309
+ Error: "Unable to detect changes"
310
+
311
+ **Error Log:**
312
+ [Paste error log here]
313
+ ```
314
+
315
+ ## Suggesting Enhancements
316
+
317
+ ### Before Submitting an Enhancement
318
+
319
+ - Check if the feature already exists
320
+ - Review open feature requests
321
+ - Ensure it aligns with project goals
322
+ - Consider if it would benefit most users
323
+
324
+ ### How to Submit an Enhancement
325
+
326
+ Create an issue with:
327
+
328
+ - **Clear title**: Describe the enhancement concisely
329
+ - **Problem statement**: What problem does this solve?
330
+ - **Proposed solution**: How should it work?
331
+ - **Alternatives**: Other solutions you've considered
332
+ - **Benefits**: Why is this valuable?
333
+ - **Implementation ideas**: (Optional) Technical approach
334
+
335
+ ## Testing
336
+
337
+ ### Running Tests
338
+
339
+ ```bash
340
+ # Run all tests
341
+ npm test
342
+
343
+ # Run specific test suite
344
+ npm test -- --grep "authentication"
345
+
346
+ # Run with coverage
347
+ npm run test:coverage
348
+ ```
349
+
350
+ ### Writing Tests
351
+
352
+ - Write tests for all new features
353
+ - Ensure tests are deterministic and isolated
354
+ - Use descriptive test names
355
+ - Follow the AAA pattern: Arrange, Act, Assert
356
+
357
+ Example:
358
+ ```javascript
359
+ describe('AutoCommit', () => {
360
+ it('should commit changes when file is modified', async () => {
361
+ // Arrange
362
+ const autoCommit = new AutoCommit();
363
+ const testFile = 'test.txt';
364
+
365
+ // Act
366
+ await autoCommit.watch(testFile);
367
+ fs.writeFileSync(testFile, 'new content');
368
+
369
+ // Assert
370
+ const commits = await getLatestCommit();
371
+ expect(commits).toContain('Auto-commit: test.txt modified');
372
+ });
373
+ });
374
+ ```
375
+
376
+ ## Documentation
377
+
378
+ ### Documentation Guidelines
379
+
380
+ - Write clear, concise explanations
381
+ - Include code examples
382
+ - Update README when adding features
383
+ - Use proper Markdown formatting
384
+ - Add diagrams for complex concepts
385
+
386
+ ### Documentation Structure
387
+
388
+ ```
389
+ docs/
390
+ ├── README.md # Main documentation
391
+ ├── CONTRIBUTING.md # This file
392
+ ├── INSTALLATION.md # Setup instructions
393
+ ├── USAGE.md # How to use the tool
394
+ ├── API.md # API reference
395
+ └── TROUBLESHOOTING.md # Common issues
396
+ ```
397
+
398
+ ## Community
399
+
400
+ ### Getting Help
401
+
402
+ - **Issues**: For bug reports and feature requests
403
+ - **Discussions**: For questions and general discussion
404
+ - **Discord/Slack**: (If applicable) Real-time chat with community
405
+ - **Email**: Contact maintainers directly for sensitive issues
406
+
407
+ ### Stay Updated
408
+
409
+ - Watch the repository for updates
410
+ - Star the repo to show support
411
+ - Follow the maintainers on GitHub
412
+ - Check the changelog for new releases
413
+
414
+ ## Recognition
415
+
416
+ Contributors are recognized in several ways:
417
+
418
+ - Listed in CONTRIBUTORS.md
419
+ - Mentioned in release notes
420
+ - GitHub contributor badge
421
+ - Our eternal gratitude! 💙
422
+
423
+ ## License
424
+
425
+ By contributing to git-auto-pro, you agree that your contributions will be licensed under the same license as the project (see LICENSE file).
426
+
427
+ ## Questions?
428
+
429
+ Don't hesitate to ask questions! We're here to help:
430
+
431
+ - Open an issue with the `question` label
432
+ - Reach out to maintainers
433
+ - Join our community discussions
434
+
435
+ **Thank you for contributing to git-auto-pro!** 🚀
436
+
437
+ Your contributions help make this project better for everyone. We appreciate your time and effort!
438
+
439
+ ---
440
+
441
+ **Maintainers:**
442
+ - [@HimanshuSingh-966](https://github.com/HimanshuSingh-966)
443
+
444
+ **Last Updated:** January 2026
@@ -1,13 +1,14 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: git-auto-pro
3
- Version: 1.1.0
3
+ Version: 2.0.0
4
4
  Summary: Complete Git + GitHub automation CLI tool with interactive file management
5
- Home-page: https://github.com/yourusername/git-auto-pro
6
- Author: Your Name
5
+ Home-page: https://github.com/HimanshuSingh-966/git-auto-pro
6
+ Author: Himanshu Singh
7
7
  Author-email: Himanshu Singh <choudharyhimanshusingh966@gmail.com>
8
+ Maintainer-email: Himanshu Singh <choudharyhimanshusingh966@gmail.com>
8
9
  License: MIT
9
10
  Project-URL: Homepage, https://github.com/HimanshuSingh-966/git-auto-pro
10
- Project-URL: Documentation, https://github.com/HimanshuSingh-966/git-auto-pro#readme
11
+ Project-URL: Documentation, https://github.com/HimanshuSingh-966/git-auto-pro/blob/main/README.md
11
12
  Project-URL: Repository, https://github.com/HimanshuSingh-966/git-auto-pro
12
13
  Project-URL: Issues, https://github.com/HimanshuSingh-966/git-auto-pro/issues
13
14
  Keywords: git,github,cli,automation,devtools,gitignore,interactive
@@ -109,6 +110,24 @@ Git-Auto Pro is a powerful command-line tool that automates your entire developm
109
110
  - Close issues with comments
110
111
  - Update issue properties
111
112
 
113
+ ### 🛡️ Safe Commit Flow (v2.0)
114
+ - Push to test branches automatically (`--safe` flag)
115
+ - Auto-create Pull Requests with review checklists
116
+ - Branch collision detection with timestamp fallback
117
+ - Configurable via settings (`safe_mode`, `test_branch_prefix`)
118
+
119
+ ### ⏪ Undo & Release (v2.0)
120
+ - `git-auto undo` — Soft/hard reset with confirmation prompts
121
+ - `git-auto release` — Tag, bump version, push, create GitHub releases
122
+ - Canonical version source from `pyproject.toml`
123
+
124
+ ### 🩺 Diagnostics (v2.0)
125
+ - `git-auto doctor` — Git, Python, token, remote, branch consistency checks
126
+
127
+ ### 📋 Pull Request Management (v2.0)
128
+ - Create, list, merge, and review PRs from CLI
129
+ - Supports `--draft`, `--reviewer`, `--label`, `--squash`, `--rebase`
130
+
112
131
  ### 👥 Collaboration
113
132
  - Add collaborators to repositories
114
133
  - Branch protection rules
@@ -225,8 +244,10 @@ git-auto commit "message" --amend # Amend last commit
225
244
  git-auto push # Push
226
245
  git-auto push "message" # Add, commit, and push
227
246
  git-auto push --force # Force push
247
+ git-auto push --safe "message" # Safe commit flow (test branch + PR)
228
248
  git-auto pull # Pull (merge strategy)
229
249
  git-auto pull --rebase # Pull with rebase
250
+ git-auto pull --rebase # Pull with rebase
230
251
  git-auto pull --no-rebase # Pull with merge (default)
231
252
  git-auto pull --ff-only # Only fast-forward
232
253
  git-auto pull -b main --rebase # Pull specific branch with rebase
@@ -385,6 +406,40 @@ git-auto --help # Show help
385
406
  git-auto COMMAND --help # Command-specific help
386
407
  ```
387
408
 
409
+ ### Undo
410
+ ```bash
411
+ git-auto undo # Soft reset (keep changes staged)
412
+ git-auto undo --hard --yes # Hard reset (discard changes)
413
+ git-auto undo --push --yes # Soft reset + force push
414
+ ```
415
+
416
+ ### Release
417
+ ```bash
418
+ git-auto release patch # Bump patch version
419
+ git-auto release minor # Bump minor version
420
+ git-auto release major # Bump major version
421
+ git-auto release 2.1.0 # Set exact version
422
+ git-auto release patch --draft # Create draft release
423
+ git-auto release minor --notes "Custom notes" # With release notes
424
+ ```
425
+
426
+ ### Doctor
427
+ ```bash
428
+ git-auto doctor # Run all diagnostics
429
+ ```
430
+
431
+ ### Pull Requests
432
+ ```bash
433
+ git-auto pr "Fix login bug" # Create PR from current branch
434
+ git-auto pr "Feature" --draft # Create draft PR
435
+ git-auto pr "Fix" --reviewer user1 --label bug # With reviewer and label
436
+ git-auto prs # List open PRs
437
+ git-auto prs --state closed # List closed PRs
438
+ git-auto merge-pr 42 # Merge PR
439
+ git-auto merge-pr 42 --squash # Squash merge
440
+ git-auto review-pr 42 # Open PR in browser
441
+ ```
442
+
388
443
  ## 🎯 Use Cases
389
444
 
390
445
  ### Starting a New Python Project
@@ -464,10 +519,14 @@ Available options:
464
519
  - `editor`: Default text editor
465
520
  - `git_user_name`: Git username
466
521
  - `git_user_email`: Git email
522
+ - `safe_mode`: Enable safe commit flow by default (default: `false`)
523
+ - `test_branch_prefix`: Prefix for test branches (default: `test`)
524
+ - `auto_create_pr`: Auto-create PR on safe push (default: `true`)
525
+ - `pr_base_branch`: Base branch for PRs (default: `main`)
467
526
 
468
527
  ## 🤝 Contributing
469
528
 
470
- Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
529
+ Contributions are welcome! Please see [CONTRIBUTING.md](https://github.com/HimanshuSingh-966/git-auto-pro/blob/main/CONTRIBUTING.md) for details.
471
530
 
472
531
  1. Fork the repository
473
532
  2. Create a feature branch (`git-auto switch -c feature/amazing`)
@@ -477,7 +536,7 @@ Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for det
477
536
 
478
537
  ## 📝 License
479
538
 
480
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
539
+ This project is licensed under the MIT License - see the [LICENSE](https://github.com/HimanshuSingh-966/git-auto-pro/blob/main/LICENSE) file for details.
481
540
 
482
541
  ## 🙏 Acknowledgments
483
542
 
@@ -66,6 +66,24 @@ Git-Auto Pro is a powerful command-line tool that automates your entire developm
66
66
  - Close issues with comments
67
67
  - Update issue properties
68
68
 
69
+ ### 🛡️ Safe Commit Flow (v2.0)
70
+ - Push to test branches automatically (`--safe` flag)
71
+ - Auto-create Pull Requests with review checklists
72
+ - Branch collision detection with timestamp fallback
73
+ - Configurable via settings (`safe_mode`, `test_branch_prefix`)
74
+
75
+ ### ⏪ Undo & Release (v2.0)
76
+ - `git-auto undo` — Soft/hard reset with confirmation prompts
77
+ - `git-auto release` — Tag, bump version, push, create GitHub releases
78
+ - Canonical version source from `pyproject.toml`
79
+
80
+ ### 🩺 Diagnostics (v2.0)
81
+ - `git-auto doctor` — Git, Python, token, remote, branch consistency checks
82
+
83
+ ### 📋 Pull Request Management (v2.0)
84
+ - Create, list, merge, and review PRs from CLI
85
+ - Supports `--draft`, `--reviewer`, `--label`, `--squash`, `--rebase`
86
+
69
87
  ### 👥 Collaboration
70
88
  - Add collaborators to repositories
71
89
  - Branch protection rules
@@ -182,8 +200,10 @@ git-auto commit "message" --amend # Amend last commit
182
200
  git-auto push # Push
183
201
  git-auto push "message" # Add, commit, and push
184
202
  git-auto push --force # Force push
203
+ git-auto push --safe "message" # Safe commit flow (test branch + PR)
185
204
  git-auto pull # Pull (merge strategy)
186
205
  git-auto pull --rebase # Pull with rebase
206
+ git-auto pull --rebase # Pull with rebase
187
207
  git-auto pull --no-rebase # Pull with merge (default)
188
208
  git-auto pull --ff-only # Only fast-forward
189
209
  git-auto pull -b main --rebase # Pull specific branch with rebase
@@ -342,6 +362,40 @@ git-auto --help # Show help
342
362
  git-auto COMMAND --help # Command-specific help
343
363
  ```
344
364
 
365
+ ### Undo
366
+ ```bash
367
+ git-auto undo # Soft reset (keep changes staged)
368
+ git-auto undo --hard --yes # Hard reset (discard changes)
369
+ git-auto undo --push --yes # Soft reset + force push
370
+ ```
371
+
372
+ ### Release
373
+ ```bash
374
+ git-auto release patch # Bump patch version
375
+ git-auto release minor # Bump minor version
376
+ git-auto release major # Bump major version
377
+ git-auto release 2.1.0 # Set exact version
378
+ git-auto release patch --draft # Create draft release
379
+ git-auto release minor --notes "Custom notes" # With release notes
380
+ ```
381
+
382
+ ### Doctor
383
+ ```bash
384
+ git-auto doctor # Run all diagnostics
385
+ ```
386
+
387
+ ### Pull Requests
388
+ ```bash
389
+ git-auto pr "Fix login bug" # Create PR from current branch
390
+ git-auto pr "Feature" --draft # Create draft PR
391
+ git-auto pr "Fix" --reviewer user1 --label bug # With reviewer and label
392
+ git-auto prs # List open PRs
393
+ git-auto prs --state closed # List closed PRs
394
+ git-auto merge-pr 42 # Merge PR
395
+ git-auto merge-pr 42 --squash # Squash merge
396
+ git-auto review-pr 42 # Open PR in browser
397
+ ```
398
+
345
399
  ## 🎯 Use Cases
346
400
 
347
401
  ### Starting a New Python Project
@@ -421,10 +475,14 @@ Available options:
421
475
  - `editor`: Default text editor
422
476
  - `git_user_name`: Git username
423
477
  - `git_user_email`: Git email
478
+ - `safe_mode`: Enable safe commit flow by default (default: `false`)
479
+ - `test_branch_prefix`: Prefix for test branches (default: `test`)
480
+ - `auto_create_pr`: Auto-create PR on safe push (default: `true`)
481
+ - `pr_base_branch`: Base branch for PRs (default: `main`)
424
482
 
425
483
  ## 🤝 Contributing
426
484
 
427
- Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
485
+ Contributions are welcome! Please see [CONTRIBUTING.md](https://github.com/HimanshuSingh-966/git-auto-pro/blob/main/CONTRIBUTING.md) for details.
428
486
 
429
487
  1. Fork the repository
430
488
  2. Create a feature branch (`git-auto switch -c feature/amazing`)
@@ -434,7 +492,7 @@ Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for det
434
492
 
435
493
  ## 📝 License
436
494
 
437
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
495
+ This project is licensed under the MIT License - see the [LICENSE](https://github.com/HimanshuSingh-966/git-auto-pro/blob/main/LICENSE) file for details.
438
496
 
439
497
  ## 🙏 Acknowledgments
440
498
 
@@ -525,4 +525,4 @@ pip install -e ".[dev]"
525
525
 
526
526
  ---
527
527
 
528
- Happy coding! 🚀
528
+ Happy coding! 🚀
File without changes
@@ -198,8 +198,8 @@ bash scripts/install.sh
198
198
 
199
199
  If issues persist:
200
200
 
201
- 1. Check [GitHub Issues](https://github.com/yourusername/git-auto-pro/issues)
202
- 2. Search [Discussions](https://github.com/yourusername/git-auto-pro/discussions)
201
+ 1. Check [GitHub Issues](https://github.com/HimanshuSingh-966/git-auto-pro/issues)
202
+ 2. Search [Discussions](https://github.com/HimanshuSingh-966/git-auto-pro/discussions)
203
203
  3. Open a new issue with:
204
204
  - Your OS and Python version
205
205
  - Error message or logs
@@ -242,4 +242,4 @@ pip install -e .
242
242
 
243
243
  # Test
244
244
  git-auto --help
245
- ```
245
+ ```