Przejdź do treści
Biblioteka skilli
DevOps i chmura · Automatyzacja

dot-gitlab-sync

/dot-gitlab-sync

Synchronizuje katalogi szablonów .github i .gitlab ze zmianami właściwymi dla platformy, gdy po edycji jednego z nich oba mają pozostać spójne.

Repozytorium
common-devx ↗
Licencja
MIT
Ostatnia zmiana repozytorium
01.06.2026

Ocena i bezpieczeństwo

90/ 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ść25 / 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
3
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 01.06.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

Synchronizuje katalogi szablonów .github i .gitlab ze zmianami właściwymi dla platformy, gdy po edycji jednego z nich oba mają pozostać spójne.

Wyzwalacze z opisu

sync templatessync gitlabsync github gitlabdot-gitlab-sync
Oryginalny opis (EN)

Sync .github/ and .gitlab/ template directories, applying platform-specific transformations. Use when keeping GitHub and GitLab templates in sync after edits to either directory. Triggers: "sync templates", "sync gitlab", "sync github gitlab", "dot-gitlab-sync".

Jak działa

  1. When to Use This Skill
  2. Asset Resolution
  3. Process
  4. General Doc Constraints
  5. Skill Constraints
Sekcje z nagłówków SKILL.md, w oryginale · 91 linii, 769 słów
Podgląd SKILL.md
---
name: dot-gitlab-sync
description: |
  Sync .github/ and .gitlab/ template directories, applying platform-specific transformations.
  Use when keeping GitHub and GitLab templates in sync after edits to either directory.
  Triggers: "sync templates", "sync gitlab", "sync github gitlab", "dot-gitlab-sync".
license: MIT
metadata:
  author: KemingHe
  version: "1.0.0"
---

# GitHub-GitLab Template Sync

Synchronize `.github/` and `.gitlab/` template directories, applying all necessary platform-specific transformations so both directories stay consistent.

**Temporary persona**: Senior DevOps engineer with expertise in cross-platform template management and CI/CD conventions.

## When to Use This Skill

- After editing issue or PR templates in `.github/` and needing `.gitlab/` updated
- After editing issue or MR templates in `.gitlab/` and needing `.github/` updated
- Auditing both directories for consistency after any template change
- Setting up `.gitlab/` templates for the first time from existing `.github/` templates

## Asset Resolution

1. Check `./assets/transformation-rules.md` for the platform transformation reference
2. If not found, search `**/transformation-rules.md` in repository
3. If still not found, use the rules documented in this skill's Process section

## Process

### Step 1: Determine Sync Direction

Ask the user:

- **Source**: Which directory was just edited? (`.github/` or `.gitlab/`)
- **Target**: Which directory needs updating?
- If unclear, compare file modification timestamps to suggest a direction

### Step 2: Inventory Templates

List templates in both directories:

- `.github/ISSUE_TEMPLATE/` vs `.gitlab/issue_templates/`
- `.github/pull_request_template.md` vs `.gitlab/merge_request_templates/merge_request_template.md`
- `.github/ISSUE_TEMPLATE/config.yml` (GitHub-only, no GitLab equivalent)

Report any templates that exist in source but not in target (new templates to create) or vice versa (orphaned templates to flag).

### Step 3: Apply Transformations

For each template, apply the platform-specific transformations from the asset reference:

**GitHub to GitLab**:

- Remove YAML frontmatter (`name`, `about`, `title`, `labels` fields)
- Replace "PR" with "MR" and "pull request" with "merge request" in template body
- Replace "issue/PR number" with "issue/MR number" in Related sections
- Copy to GitLab directory structure (lowercase `issue_templates/`, `merge_request_templates/`)
- Skip `config.yml` (no GitLab equivalent)

**GitLab to GitHub**:

- Add YAML frontmatter with appropriate `name`, `about`, `title`, `labels` fields
- Replace "MR" with "PR" and "merge request" with "pull request" in template body
- Replace "issue/MR number" with "issue/PR number" in Related sections
- Copy to GitHub directory structure (uppercase `ISSUE_TEMPLATE/`, root-level PR template)

### Step 4: Validate

After sync, verify consistency:

- Every issue template in source has a corresponding template in target
- Template body content matches (modulo platform transformations)
- No stale terminology remains (e.g., "PR" in GitLab templates)
- Frontmatter is present in GitHub templates and absent in GitLab templates

Report clean status or list remaining discrepancies.

## General Doc Constraints

Apply to all generated output. If a discovered template deviates from any rule (e.g., uses emojis semantically, uses a different bullet convention), note the deviation explicitly and confirm with the user before treating it as a permitted exception.

- **Characters**: QWERTY keyboard typeable only - no smart quotes, emojis, or special Unicode anywhere. In prose, do not use em-dashes or em-dash substitutes (`--`, ` -- `); use ` - ` (space-dash-space) for clause separation instead. Exceptions: `↑` for ToC navigation; Unicode box drawing characters for `tree`-style directory rendering.
- **Inline formatting**: Use `_underscore_` for italics, not `*single-star*`. Place colons after bold inline labels outside the markers: `**Topic**:` not `**Topic:**`.
- **Bullets**: Use `-` for all unordered lists; one bullet per complete thought; never wrap a bullet's content mid-sentence onto a continuation line - split into separate bullets if too long or multi-thought. Nested sub-bullets for component grouping are permitted. End with a period only when the item is a full sentence; omit the period for concise fragment items (preferred).
- **Prose**: Do not insert hard newlines to simulate visual wrapping. Keep each prose paragraph on one continuous physical line and let editors or viewers wrap it visually. Exception: commit message bodies use one sentence per line for `git log` readability.
- **Template hygiene**: Delete `(optional)` and any parenthetical conditional label (e.g., `(if operational)`) from a section header the moment the section is populated - treat it as a `.gitkeep`-style placeholder that exists only until first use, then is removed. Omit the entire section (header and body) when unused. Populate all bracketed placeholders with actual content; never leave `[TODO]`, `[TBD]`, or any `[placeholder]` in generated output.
- **Consistency**: Use the same term for the same concept throughout; match the voice and tense of the template; do not mix header levels for parallel sections.
- **KISS and DRY**: Each section and bullet conveys unique information - no redundancy or overlap.

> General Doc Constraints v1.2.0 - KemingHe/common-devx

## Skill Constraints

- **Templates only**: Sync issue and PR/MR templates; do not touch CI/CD configs, workflows, or other dot-dir contents
- **User confirmation**: Always confirm sync direction before applying changes
- **Preserve intent**: Transformations must preserve the template's purpose and structure; only platform-specific elements change
- **config.yml**: GitHub-only; never create a GitLab equivalent, never delete from GitHub during GitLab-to-GitHub sync
Pliki w paczce (3)
  • README.md 1 KB
  • SKILL.md 6 KB
  • assets/transformation-rules.md 2 KB

Wersje

W bazie nie ma innych skilli o nazwie dot-gitlab-sync.

Migawka bazy z 13.11.2026 · wersja paczki 2ef9932c7628 (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

  • 90gitlab-ci
    Pisze i konfiguruje potoki GitLab CI/CD: pliki .gitlab-ci.yml, runnery, cache, artefakty i wdrożenia wielośrodowiskowe.
  • 100ci-cd-gitlab-ci-pipelines
    Buduje wieloetapowe pipeline'y CI/CD w pliku .gitlab-ci.yml, z etapami integracji i wdrożenia.
  • 100gitlab-ci-patterns
    Dostarcza wzorce potoków GitLab CI/CD: etapy, zadania, artefakty, cache i wdrożenia do środowisk, przy pracy z plikiem .gitlab-ci.yml.
  • 100gitlab-ci-basics
    Prawdopodobnie obsługuje podstawy GitLab CI w ramach podstaw DevOps.
  • 100ci-cd-pipeline
    Pomaga projektować, debugować i naprawiać pipeline'y CI/CD w GitHub Actions, GitLab CI i Jenkins.
  • 100gitlab-ci
    Pomaga w GitLab CI/CD: plik .gitlab-ci.yml, etapy, artefakty, cache, GitLab Runners i Auto DevOps przy konfiguracji potoków integracji i wdrożeń.

Uwagi i zgłoszenia

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