Przejdź do treści
Biblioteka skilli
Programowanie · Automatyzacja

push

/push

Sprawdza commity i cel, pyta o sposób scalenia, gdy zdalne repozytorium jest przed lokalnym, i dopiero potem wysyła zmiany.

Repozytorium
devkit ↗
Licencja
MIT
Ostatnia zmiana repozytorium
13.11.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
2
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 13.11.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Sprawdza commity i cel, pyta o sposób scalenia, gdy zdalne repozytorium jest przed lokalnym, i dopiero potem wysyła zmiany.

Wyzwalacze z opisu

pushpush to remote

Argumenty

/push [remote] [branch]
Oryginalny opis (EN)

Check the commits and target, ask how to merge if the remote is ahead, then push. Use for "push", "push to remote".

Jak działa

  1. 1. Check the target
  2. 2. Blocked cases
  3. 3. When the remote is ahead
  4. 4. Push
  5. 5. Report
Sekcje z nagłówków SKILL.md, w oryginale · 45 linii, 357 słów
Podgląd SKILL.md
---
name: push
description: Check the commits and target, ask how to merge if the remote is ahead, then push. Use for "push", "push to remote".
argument-hint: "[remote] [branch]"
---

# Push

Branch and merge rules in `docs/rules/git.md` take precedence.

## 1. Check the target

```bash
git status --porcelain
git rev-parse --abbrev-ref HEAD
git rev-parse --abbrev-ref --symbolic-full-name @{u}   # fails if there is no upstream
git ls-remote --heads <remote> <branch>                 # empty means a new branch
```

| Case | Commits to push | Commits only on the remote |
|---|---|---|
| Branch exists on the remote | `git fetch --no-tags <remote> <branch>`, then `git log --oneline <remote>/<branch>..HEAD` | `git log --oneline HEAD..<remote>/<branch>` |
| New branch | `git log --oneline HEAD --not --remotes=<remote>` | None |

- Remote: argument → upstream's remote → `origin`. Branch: argument → current branch.
- Say that uncommitted changes will not be pushed (do not commit them).
- Show the list of commits to push. If commits unrelated to this task are mixed in, ask.

## 2. Blocked cases

- **Force push** (`--force`, `--force-with-lease`) is not done. Even when the user explicitly asks, show the remote commits that would be overwritten, confirm again, and then use only `--force-with-lease`. Never on protected or deploy branches.
- **Protected or deploy branches** (listed in `git.md`, else `main`, `master`, `release/*`, `prod*`): if asked to push directly, stop and say so. If the repo flow merges that branch via PR/MR, suggest `devkit:pr-publish`.
- If a pre-push hook fails, report the cause (`--no-verify` and force are blocked by the devkit guard hook).

## 3. When the remote is ahead

If there are commits only on the remote, do not push; show them and ask how to integrate. Recommend what `git.md` says; without a rule, recommend merge (`git merge <remote>/<branch>`). Rebase rewrites already shared commits, so do it only if the user chooses it. On conflicts, show the conflicted files and wait for instructions.

## 4. Push

```bash
git push <remote> <branch>            # upstream exists
git push -u <remote> <branch>         # new branch
git log -1 --format=%H <remote>/<branch>
```

## 5. Report

Report the remote, branch, pushed commit range (SHAs) and whether it is a new branch. If the CI config runs a pipeline or deploy on this branch, say so. Create the PR/MR with `devkit:pr-publish` when asked.
Pliki w paczce (2)
  • SKILL.md 2 KB
  • evals/evals.json 1 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · JQ-WCoding/devkit100MIT
AsiaOstrich/universal-dev-standards100MIT
hamedmp/matrix-os100AGPL-3.0
AsiaOstrich/universal-dev-standards100MIT
AsiaOstrich/universal-dev-standards100MIT
Mooshieblob1/MooshieUI100AGPL-3.0
AsiaOstrich/universal-dev-standards100MIT
tibursocampos/agent-dev-toolkit100MIT
technicalpickles/pickled-claude-plugins100MIT

Migawka bazy z 13.11.2026 · wersja paczki 2478af757682 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100git-push
    Wypycha lokalne commity na zdalne repozytorium, obsługując śledzenie gałęzi, ustawianie upstreamu i bezpieczne wzorce pushowania.
  • 96commit-and-push
    Tworzy atomowe commity konwencjonalne przez git-agent i wysyła zmiany do zdalnego repozytorium.
  • 98signal-push
    Dodaje zmiany do indeksu, tworzy conventional commit i wypycha go do zdalnego repozytorium jednym poleceniem w pełnym cyklu lokalnym do zdalnego.
  • 100commit
    Tworzy atomowe lokalne commity z bieżących zmian w drzewie roboczym, każdy z jednym typem zmiany, bez wypychania na zdalne repozytorium.
  • 100commit-push-pr
    Tworzy commit, wysyła zmiany do zdalnego repozytorium i otwiera pull request gotowy do przeglądu.
  • 86commit
    Grupuje pliki robocze w commity, pisze komunikaty w stylu projektu i pyta, co zrobić dalej: commit, push, PR albo merge.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.