PACKI...CE-GIT(1)

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

πŸ’– PACKI...CE-GIT(1) πŸ’–

okay bestie, welcome to the packit source-git update-source-git Manual β€” yes that's the whole manual name, it's a mouthful, we move πŸ’…


✨ NAME ✨

packit-source-git-update-source-git β€” Update a source-git repository based on a...

(yes the sentence just ends there, that's canon, we respect the original 🫢)


🌸 SYNOPSIS 🌸

packit source-git update-source-git [OPTIONS] DIST_GIT SOURCE_GIT
[REVISION_RANGE]

πŸ¦‹ DESCRIPTION πŸ¦‹

So the whole vibe here? You're updating a source-git repository based on a dist-git repository. That's it, that's the job.

More specifically: you take your source-git repo and you update it with the selected checkout of a spec file plus all the additional packaging files coming from a dist-git repo. slay.

The REVISION_RANGE represents the part of dist-git history that's supposed to be synchronized. Want to sync just the last commit from dist-git? Use HEAD~.. β€” iconic, easy, love that for you. For all the possible revision range formats out there, go peek at gitrevisions(7). And if you don't specify a revision range at all? Then dist-git commits that have no counterpart in source-git get synchronized. no cap.

⚠️ IMPORTANT ONE, bestie: if patches or the sources file in the spec file changed, the command exits with return code 2. Those changes are not supported by this command β€” code changes are supposed to happen in the source-git repo. periodt.

Inapplicable changes to the .gitignore file are just... ignored πŸ™ˆ because that file may not be synchronized between dist-git and source-git in the first place.

By default this command performs only local operations and uses the content of the source-git and dist-git repositories exactly as it is β€” no checkout, no fetch, nothing extra. main character energy but make it offline.

Once the synchronization is done, packit will tell you about the changes it made and about the differences between source-git and dist-git prior to the whole synchronization process. full transparency, we love an honest queen πŸ‘‘

Dist-git commit messages are preserved and reused when creating new source-git commits β€” but a 'From-dist-git-commit' trailer gets appended to them, marking the hash of the dist-git commit they were created from. so you always know where they came from, iykyk.

🌈 Examples 🌈

Take the extra (not synchronized) commit(s) of the systemd dist-git repo and copy the spec file and other packaging files into the source-git repo:

$ packit source-git update-source-git rpms/systemd src/systemd

Synchronize changes from the last three dist-git commits:

$ packit source-git update-source-git rpms/systemd src/systemd HEAD~3..

πŸ’… OPTIONS πŸ’…

  • -f, --force β€” Don't check the synchronization status of the source-git and dist-git repos before performing the update. living dangerously, respect.

✨ that's the whole page, you ate it ✨

this was the packit source-git update-source-git Manual, version 1.16.3, dated 2026-09-04 β€” go forth and sync, bestie πŸŽ€πŸ¦‹πŸ’–

πŸ“¦ where this page comes from