Edit this page

ProjectWeek

Back to Projects List

Transition to GitHub as authoritative version control system

Key Investigators

Project Description

Work toward finalizing the conversion from

Slicer SVN repository mirror mirrored on GitHub

to

GitHub only repository

Objective

  1. Objective A. Remove all large binary data from current Slicer source version and filter history removing large data from past commits and restore authorship
  2. Objective B. Document how developers can upload binary data, and update release process as needed. (based on ITK great documentation)
  3. Objective C. Publish updated repository

Approach and Plan

  1. See plan documented on the wiki Labs page. See https://www.slicer.org/wiki/Documentation/Labs/TransitionToGit

Progress and Next Steps

Discussion Summary

Copied from Slicer 5 breakout session page

Post-release Action items:

Technical Achievements

  1. Generated list of files to remove from the history
  2. Created script to remove files and add them to GIT_MIGRATION_DATA_REMOVED.txt. Script is executed using git filter-branch --tree-filter
  3. Created git-rocket-filter scripts for:
    • consolidating git trailers, set author name and email based on “From:”
    • fixing authorship
  4. Created script to graft release branches onto filter master branch
  5. See https://github.com/jcfr/Slicer-github-transition-scripts

Illustrations

Background and References