A small Windows desktop app for publishing existing project folders to GitHub.
It uses a local Tkinter interface with the same wolf-branded look as YouTube Music Playlist Downloader. Commands run only when you click an action, and every Git result is shown in the command log.
- Windows
- Git installed and available on
PATH - GitHub CLI (
gh) installed and available onPATHif you want to use the in-app GitHub Login button - Python 3.10+ only if you want to run from source instead of the bundled EXE
Download or clone this repository, then run:
dist\GitHubPublisher.exe
If Windows SmartScreen warns about an unknown publisher, choose More info and Run anyway only if you downloaded it from the repository you trust.
Clone the repo into any folder you like:
git clone https://github.com/DisturbedMind/GitHub-Publisher.git
cd GitHub-Publisher
python .\github_publisher_gui.pyOr, from inside the cloned folder:
.\run.ps1.\build_exe.batThe rebuilt app is written to:
dist\GitHubPublisher.exe
- Sign in with GitHub from the app through GitHub CLI
- Check the current GitHub login status
- Browse for a local project folder or paste a path manually
- Inspect branch, remote, and changed files
- Initialize Git in a selected folder
- Set or update the
originremote URL - Pull from GitHub with rebase
- Run the first-upload pull for unrelated histories
- Show conflicted files
- Continue after conflict markers are removed
- Commit all changes and push in one shortcut
- Push to the selected remote and branch
- Keep an on-screen action log of every command result
- The app never stores GitHub tokens; GitHub CLI handles authentication.
- Commands run only inside the project path you enter.
- If the project is not a Git repo yet, choose the folder and click 1. Initialize Git.
- If GitHub rejects your push because the remote already has a README, license, or
.gitignore, click 3. Pull from GitHub. If Git says the histories are unrelated, click Fix A. First Upload Pull once. - If Git reports conflicts, click Fix B. Show Conflicts, edit the listed files, remove every
<<<<<<<,=======, and>>>>>>>marker, save, then click Fix C. Continue After Fix.
