NetBSD Wiki/users/wiz/
pkgsrc-migration
This is the list of open issues for the migration of pkgsrc to git.
There are at least the following topics:
Repositories
Either use the existing conversion, or make a new one using wip/cvs2git
.
(DONE in this section means we know how to do it.)
- DONE conversion exists, but joerg wants to do a cleaned up version
- asked joerg if he's still interested in doing that
- no reply, so we'll take it as-is
- asked joerg if he's still interested in doing that
DONE
doc/CHANGES-*
: add a.gitattributes
file indoc
withCHANGES-* merge=union
DONE mailmap (mapping CVS Unix users to name and email - see localsrc/cvs_server/migration)
DONE mailmap needs to be applied
git filter-repo --force --mailmap $PATH_TO_MAILMAP
DONE rename trunk to main:
git branch main trunk
git switch main
git branch -d trunk
git server
- software
- use git: ssh + git like for wip
- new hardware?
- no; use cvs and anoncvs machines
- new DNS entry
- public access: provide read-only access that's not on github
git server hooks
- DONE email notifications: use hook script from pkgsrc-wip
- DONE linear history: use hook script from pkgsrc-wip
- DONE warning about merge conflict in commits
- DONE warning about work directories included in commits
- DONE emails to GNATS when commits include magic pattern relating to a PR
- DONE
pkg_add p5-MIME-Lite
for notifications - DONE branch support
Documentation
- pkgsrc-specific documentation for developers and git
- update branch-cutting instructions
- update releng instructions
Updating Repository Contents & Deployment
- Daily/weekly jobs:
- daily publishing jobs for tar balls
- with .git or without? or both?
- updated extracted sources? where?
- all the pkgsrc automation (requires an unpacked updated tree of the right branch, doesn't care how it came into being)
- backups of the repo(s)
- daily publishing jobs for tar balls
- developer activity script for admins/membership-exec needs to be adapted
- update bulk build machines to get their sources from git
Switching from CVS to git
- make git repository available to all developers
- make pkgsrc CVS read-only
- github
- after final conversion happens, either force-push or make a new repository and deprecate the old one, or remove completely?
Post-Conversion
Cleanups after conversions are final (these can only be done once the CVS-to-git step is finalized, because they are manual work and would get lost otherwise)
- delete old branches
- tag heads so no commits are lost? Other method?
- add .gitattributes file for doc/
- turn off CVS/anoncvs server
Add a comment