PACKIT-SOURCE-GIT-INIT(1)

πŸ“¦
version 1.16.3 Β· 5 versions
, in fedora 43, fedora 44

πŸ’… packit-source-git-init β€” a manual page, but make it cute ✨

okay bestie, so this is the packit source-git init page from the packit source-git init Manual (yes it's a whole manual for one command, iconic behavior honestly) and we're gonna walk through it together, no cap. 🫢


✨ NAME ✨

packit-source-git-init β€” initialize SOURCE_GIT as a source-git repo… and that trailing "..." is literally in the original, we respect the ellipsis πŸ’…


🌸 SYNOPSIS 🌸

packit source-git init [OPTIONS] UPSTREAM_REF SOURCE_GIT DIST_GIT

πŸ¦‹ DESCRIPTION πŸ¦‹

So the whole vibe here? You're initializing SOURCE_GIT as a source-git repo by applying the downstream patches from DIST_GIT as Git commits on top of UPSTREAM_REF. Like, you're literally stacking them patches up into commits, periodt. πŸ‘‘

Important things, bestie, listen up:

  • SOURCE_GIT needs to be an existing clone of the upstream repository. Not a new folder, not a vibe, an actual clone. πŸ”₯
  • UPSTREAM_REF is a tag, branch or commit from SOURCE_GIT.
  • SOURCE_GIT and DIST_GIT are paths to the source-git and dist-git repos. Branch names can be specified, separated by colons. iykyk.

And then the branch lore:

  • If a branch name is specified for SOURCE_GIT, the branch is checked out and reset to UPSTREAM_REF.
  • If a branch name is specified for DIST_GIT, the branch is checked out before setting up the source-git repo. This branch is expected to exist β€” so don't come crying if it doesn't, it's giving "not my problem". 😭

Also every Git commit created in SOURCE_GIT will have a 'From-dist-git-commit' trailer, which marks the hash of the dist-git commit it came from. So it's traceable, it's transparent, it's main character energy. ⭐

Wanna learn more about source-git? The page says go here:

https://packit.dev/docs/source-git/

πŸŽ€ Examples

Because examples are the bestie of understanding, fr fr:

$ packit source-git init v2.3.1 src/acl:rawhide rpms/acl:rawhide
$ packit source-git init --pkg-tool centpkg v2.3.1 src/acl rpms/acl

See how the second one passes --pkg-tool centpkg? Gorgeous. πŸ’–


πŸ‘‘ OPTIONS πŸ‘‘

One bullet per flag, all of them, nothing skipped, let's go:

  • --upstream-url TEXT β€” Git URL of the upstream repository. If you specify it, it gets saved in the source-git configuration. Simple as that. ✨
  • --upstream-remote TEXT β€” the name of the remote that points at the upstream repository. If --upstream-url is not specified, then the fetch URL of this remote gets saved in the source-git configuration as the Git URL of the upstream project. Defaults to 'origin'. πŸ’œ
  • --pkg-tool TEXT β€” the name or path of the packaging tool used to work with sources in the dist-git repo. It's a variant of 'rpkg'. Defaults to 'fedpkg' or whatever tool is configured in the Packit configuration. 🌈
  • --pkg-name TEXT β€” the name of the package in the distro. Defaults to the directory name of DIST_GIT. πŸ“
⚠️ okay quick reminder bestie: SOURCE_GIT has to be an existing clone of the upstream repo, and if you name a branch for DIST_GIT that branch is expected to exist. Those aren't suggestions, they're the rules. πŸ’€

and that's the whole page!! every option, every default, every example, every path, preserved with love and glitter πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…πŸ«ΆπŸ”₯πŸ‘‘πŸŒˆβ­

this was version 1.16.3, dated 2026-09-04, from the packit source-git init Manual β€” mwah, bye bestie, go init some repos πŸ’œ

πŸ“¦ where this page comes from