The Debian GNOME team is currently (2017-08-08) working on migrating their packages from SVN to git.
https://anonscm.debian.org/git/pkg-gnome/
For the workflow after the conversion, see Gnome/Git
Background
sjoerd produced an initial set of migrated packages, using these scripts, and laney is working on cleaning these up
Noticed issues / TODO
DONE: Many repositories have debian/rules not executable
run git filter-branch --tree-filter "(test -e debian/rules && ! test -x debian/rules && chmod a+x debian/rules) || :" --tag-name-filter cat -- --all to hack the history.
- Some repositories are empty (e.g. gconf2, rhythmbox, ...)
- Split packages have incorrect contents (e.g. gnome-games)
- TODO: Diff repositories with svn
- TODO: Merge upstream history with latest tag (don't care about doing this historically, but could)
proposal: git replace --graft HEAD <upstream tag> <existing parents of top merge commit>
- need to find all the upstream repositories
- and the upstream tag name matching the current debian version
- TODO: Document the workflow here
Workflow to Finish Conversion
- After running the import, do a thorough diff against the current svn directory. In particular, check for changed file permissions and obsolete files that should have been deleted. (The git conversion scripts sometimes leave behind some debian/patches/ that had been removed in svn a long time ago.)
- Unless the debian/experimental branch has newer content than debian/master, delete the debian/experimental and upstream/experimental branches.
git branch -D debian/experimental upstream/experimental
For gtk4 and gtksourceview4, delete upstream/latest and then rename upstream/experimental to upstream/latest. Delete debian/master and rename debian/experimental to debian/master
For evince delete upstream/experimental.
3. Update the changelog and push to Debian. Update Vcs fields after conversion to git Add debian/gbp.conf
