[projects/git-slug] Nowa strona man git-pld(1) w man/, usunięcie starego slug.py.txt

arekm arekm at pld-linux.org
Tue May 12 15:08:30 CEST 2026


commit e57561de11b60f2076a3ff47cea2c50b54ab26da
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Apr 6 22:29:50 2026 +0200

    Nowa strona man git-pld(1) w man/, usunięcie starego slug.py.txt
    
    Stary slug.py.txt opisywał nieaktualne komendy (checkout, fetch, pull
    jako slug-specific) i opcje (-n/-nn, --all/--noall, -c/--checkout)
    których obecna wersja nie ma.
    
    Nowy man/git-pld.1.txt (asciidoc) opisuje aktualny stan:
    - globalne opcje: -d, -j, -q, --pattern, --version
    - komendy slug-specific: update (--new/--no-new, -p, -b, --depth),
      clone (--depth), list (-b), init
    - git passthrough z wyjaśnieniem mechanizmu i wbudowanych -c overrides
      (pull.rebase, fetch.prune, status.short)
    - konfiguracja [PLD] w gitconfig z przykładami nadpisywania
    - exit status
    
    Makefile zaktualizowany: źródło w man/git-pld.1.txt, wynik w man/,
    dodany target clean.

 Makefile          |  20 +++---
 man/git-pld.1.txt | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 slug.py.txt       | 112 -----------------------------
 3 files changed, 224 insertions(+), 120 deletions(-)
---
diff --git a/Makefile b/Makefile
index 153a39c..885025a 100644
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,17 @@
 MANDIR=/usr/share/man
 
-man: slug.py.1
+man: man/git-pld.1
 
-man-install:
-	install -D slug.py.1 $(DESTDIR)$(MANDIR)/man1/slug.py.1
+man-install: man/git-pld.1
+	install -D man/git-pld.1 $(DESTDIR)$(MANDIR)/man1/git-pld.1
 
-slug.py.1: slug.py.xml
-	xmlto man $?
-slug.py.xml: slug.py.txt
-	asciidoc -b docbook -d manpage $?
+man/git-pld.1: man/git-pld.1.xml
+	xmlto man -o man $<
 
-.PHONY: man man-install
+man/git-pld.1.xml: man/git-pld.1.txt
+	asciidoc -b docbook -d manpage -o $@ $<
+
+clean:
+	rm -f man/git-pld.1.xml man/git-pld.1
+
+.PHONY: man man-install clean
diff --git a/man/git-pld.1.txt b/man/git-pld.1.txt
new file mode 100644
index 0000000..a3e5a3b
--- /dev/null
+++ b/man/git-pld.1.txt
@@ -0,0 +1,212 @@
+git-pld(1)
+==========
+
+NAME
+----
+git-pld - run git commands across PLD Linux package repositories
+
+
+SYNOPSIS
+--------
+[verse]
+'git pld' [<options>] <command> [<args>...]
+'git pld' [-d <dir>] [-j <n>] [-q] [--pattern <glob>] <command> [<args>...]
+
+
+DESCRIPTION
+-----------
+
+git-pld runs git commands across PLD Linux package repositories in
+parallel.  It has two kinds of commands:
+
+Slug-specific commands ('update', 'clone', 'list', 'init') provide
+custom multi-repo orchestration with no single-repo git equivalent.
+
+Everything else is treated as a git passthrough command: 'git <command>'
+is run in each matching repo with arguments passed through unmodified,
+just like running it manually in each directory.
+
+
+GLOBAL OPTIONS
+--------------
+
+These options must appear *before* the command name.
+
+-d <directory>::
+--packagesdir <directory>::
+    Local directory containing package repositories.  Defaults to
+    the RPM '%_topdir' macro (usually '~/rpm/packages'), overridable
+    via 'PLD.packagesdir' in gitconfig.
+
+-j <n>::
+--jobs <n>::
+    Number of parallel workers.  Defaults to 'min(cpu_count * 4, 32)',
+    overridable via 'PLD.jobs' in gitconfig.
+
+-q::
+--quiet::
+    Suppress stdout from successful repos.  Stderr (warnings, errors)
+    is always shown.
+
+--pattern <glob>::
+    Repo name glob.  Repeatable.  Defaults to '*' (all repos).
+    Overridable via 'PLD.pattern' in gitconfig.
+
+--version::
+    Show version and exit.
+
+--help::
+    Show global help and exit.
+
+
+SLUG-SPECIFIC COMMANDS
+----------------------
+
+update [<options>] [<pattern>...]::
+
+Smart fetch using the centralized Refs repo.  Only fetches branches
+that actually changed upstream, which is much faster than running
+'git pld fetch' in every repo.
++
+Options:
++
+--
+-b <pattern>;;
+--branch <pattern>;;
+    Branch pattern to fetch.  Repeatable.  Defaults to 'master'.
+
+--new;;
+    Initialize local repos for packages that exist upstream but not
+    locally.
+
+--no-new;;
+    Do not initialize new repos (the default).
+
+-p;;
+--prune;;
+    Remove local repos that were deleted upstream.
+
+--depth <n>;;
+    Shallow fetch depth.  0 means full history (the default).
+
+<pattern>...;;
+    Repo name globs.  Takes priority over the global '--pattern'.
+--
+
+clone [<options>] [<pattern>...]::
+
+Batch clone matching packages from the PLD server.  Fetches all
+branches and checks out 'master' in each new repo.
++
+Options:
++
+--
+--depth <n>;;
+    Shallow fetch depth.  0 means full history (the default).
+
+<pattern>...;;
+    Repo name globs.  Takes priority over the global '--pattern'.
+--
+
+list [-b <pattern>...] [<pattern>...]::
+
+Print the names of upstream packages matching the given patterns,
+one per line.  Output goes to stdout and is suitable for piping.
++
+Options:
++
+--
+-b <pattern>;;
+--branch <pattern>;;
+    Only list packages that have a branch matching the pattern.
+    Repeatable.  Defaults to '*' (any branch).
+
+<pattern>...;;
+    Repo name globs.  Takes priority over the global '--pattern'.
+--
+
+init <package>...::
+
+Create new package repositories on the server and initialize
+local repos to track them.
+
+
+GIT PASSTHROUGH
+---------------
+
+Any command not listed above is treated as a git command and run in each
+matching repo.  For example:
+
+    git pld pull
+    git pld status
+    git pld log --oneline -5
+    git pld checkout master
+
+Arguments after the command name are passed through to git unmodified.
+If '--help' or '-h' appears in the git arguments, git's own help page is
+shown once instead of running the command in every repo.
+
+Output from each repo is prefixed with the repo name and a progress
+counter:
+
+    [  42/20000] perl-Foo: Already up to date.
+
+Built-in config overrides for passthrough commands:
+
+    pull:   pull.rebase=true, pull.autostash=true
+    fetch:  fetch.prune=true
+    status: status.short=true
+
+These are passed as 'git -c key=value' and can be overridden per-command
+in gitconfig (see CONFIGURATION below).
+
+
+CONFIGURATION
+-------------
+
+git-pld reads settings from the '[PLD]' section of '~/.gitconfig'
+(or 'XDG_CONFIG_HOME/git/config').  CLI options take priority over
+gitconfig values, which take priority over built-in defaults.
+
+PLD.packagesdir::
+    Local directory with package repositories.
+
+PLD.jobs::
+    Number of parallel workers.
+
+PLD.pattern::
+    Default repo name glob pattern.
+
+PLD.<command>-config::
+    Override built-in '-c' config pairs for a passthrough command.
+    For example, to disable the built-in 'pull.rebase=true':
++
+    [PLD]
+        pull-config = pull.rebase=false
++
+Setting to empty disables all built-in defaults for that command:
++
+    [PLD]
+        fetch-config =
+
+
+EXIT STATUS
+-----------
+
+0::
+    Success (all repos completed without error).
+
+1::
+    One or more repos failed, or a fatal error occurred.
+
+
+AUTHOR
+------
+
+Written by Kacper Kornet and PLD Linux developers.
+
+
+SEE ALSO
+--------
+
+linkgit:git[1]
diff --git a/slug.py.txt b/slug.py.txt
deleted file mode 100644
index cf5e0c7..0000000
--- a/slug.py.txt
+++ /dev/null
@@ -1,112 +0,0 @@
-slug.py(1)
-==========
-
-NAME
-----
-slug.py - tool to interact with PLD git repositories
-
-
-SYNOPSIS
---------
-[verse]
-'slug.py clone' [-d dir] [--depth depth]  [-j <threads>] pattern...
-'slug.py fetch' [-d dir] [--depth depth]  [-j <threads>] pattern...
-'slug.py init' [-d dir] [-j <threads>] package...
-'slug.py list' [-b pattern...] pattern...
-'slug.py pull' [-d dir] [--depth depth]  [-j <threads>] pattern...
-'slug.py update' [-d dir] [--depth depth] [-j <threads>] [-n|-nn] [-P]
-                 pattern...
-
-
-DESCRIPTION
------------
-
-Facilitates common task in work with PLD git repositories
-
-
-OPTIONS
--------
-
--d <directory>::
---packagesdir <directory>::
-    The local repositories are assumed to reside in $HOME/rpm/packages directory. Use this
-    options if you want to use a different location.
-
---depth <depth>::
-    Fetch at most the specified number of commits for every updated branch.
-
--j <threads>::
-    Set the number of threads which are used for fetching operations.
-
-COMMANDS
---------
-
-'checkout' <pattern>...::
-
-Update the remote branches in the set of packages that match at least one of patterns and checkouts the first
-branch in all repositories matching at least one of <patterns>.
-        -b <pattern>;;
-        --branch <pattern>;;
-            Only the remote branches which names match the pattern are updated. If omitted \'master'
-            is assumed.
-        -c;;
-        --checkout <ref>;;
-            Name of ref to checkout. If omitted the remote tracking branch  corresponding to the argument of
-            the first -b option is assumed.
-
-'clone' <pattern> ...::
-
-Clone the repositories which names match at least one of <patterns>.
-
-'fetch' <pattern>...::
-For every local repository matching at least one of patterns fetches upstream changes
-and updates remote branches. It is synonymous with 'update -b \* -nn'.
-
-'init' package ....::
-
-Creates list of packages on the server side and initialize local repositories to follow them.
-
-'list'::
-
-Print the names of upstream repositories matching at least one of patterns.
-+
-With '-b' <pattern> only repositories containing a branch matching the pattern are
-listed. Multiple '-b' options are allowed.
-
-'pull'::
-Update the remote branches in the set of packages that match at least on of the patterns
-and rebase local changes on top of remote-tracking branch corresponding to local branch.
-It is faster equivalent to performing git pull --rebase in every local repository.
-        --all;;
-            Perform rebase in all local repositories.
-        --noall;;
-            Perform rebase only in repositories with new changes fetched.
-
-'update' <pattern>...::
-
-Update the remote branches in the set of packages that match at least one of patterns.
-        -b <pattern>;;
-        --branch <pattern>;;
-            Only the remote branches which names match the pattern are updated. If omitted 
-\'master'
-            is assumed.
-        -n;;
-        --newpkgs;;
-            If the local repository does not exist it is initialized and the specified branches are fetched.
-        -nn;;
-        --nonewpkgs;;
-            Update only the existing local repositories. No new local repositories are created. It is the default
-            behaviour.
-        -P;;
-            Remove stale local packages, which were already removed upstream.
-
-CONFIGURATION FILE
-------------------
-
-The behaviour of slug.py can also be configured with file $HOME/.gitconfig. The
-value of all long options, can be specified in section [PLD] in this file.
-
-AUTHOR
-------
-
-Written by Kacper Kornet <draenog at pld-linux.org>
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/projects/git-slug.git/commitdiff/4a7e426b8f1a3571094b5dc89412bc49b8f29666



More information about the pld-cvs-commit mailing list