Project

General

Profile

Feature #6277

Rewrite the tails-live.git history

Added by intrigeri about 6 years ago. Updated about 4 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
Infrastructure
Target version:
Start date:
01/09/2015
Due date:
02/27/2015
% Done:

100%

Feature Branch:
Type of work:
Code
Starter:
No
Affected tool:

Description

Without:

  • the Debian packages: config/chroot_local-packages/*.deb config/chroot_local-packages/*.gz config/chroot_local-packages/*.bz2 config/chroot_local-packages/*.dsc
  • the forum: wiki/src/forum*
  • promotional material that will be moved somewhere else (#8827): wiki/src/promote/*
  • some large files from the logo contest: wiki/src/blueprint/logo/FINISHED_WORK.7z wiki/src/blueprint/logo/tails_hiding_cat.zip wiki/src/blueprint/logo/tails_walking_cat.zip
  • TrueCrypt tarballs: config/chroot_local-includes/usr/share/amnesia/truecrypt*.gz

Once this is done, we can revert commit 4f5588 in the tails Puppet module (filtering out spurious jenkins-{build,fetch}* tags.

First try, with only one branch:

git filter-branch -d /var/tmp/git-rewrite --tree-filter 'rm -rf config/chroot_local-packages/*.deb config/chroot_local-packages/*.gz config/chroot_local-packages/*.bz2 config/chroot_local-packages/*.dsc wiki/src/forum*' feature/jessie
# git tag | xargs git tag -d # why?!
git remote  rm origin                                   
git for-each-ref --format="%(refname)" refs/original/ | xargs -n 1 git update-ref -d
git reflog expire --expire=now --all                                                
git gc --aggressive --prune=now                                                     

=> .git goes from 316MB to 91MB. With all tags and current branches, it'll probably be a tiny bit more.

To preserve tags, one needs to also pass --tag-name-filter cat to git filter-branch.

Other options:

  • git filter-branch --index-filter is supposedly much faster than --tree-filter
  • using bfg:
    java -jar /path/to/bfg.jar \
       --delete-folders '{forum,deb-src}' \
       -D '{*.deb,*.diff.gz,*.debian.tar.*,*.orig.tar.*,forum.mdwn}' \
    tails-test.git
    

Subtasks

Feature #8618: Deal with the remaining branches' Git history and interdependenciesResolvedintrigeri

Feature #8619: Do a trial rewrite of all branches and tagsResolvedDr_Whax

Feature #8620: Adjust the Git repository rewrite process as neededResolvedDr_Whax

Feature #8624: Lock the old Git repositoryResolvedintrigeri

Feature #8633: Let contributors using Git know what they should do after the history rewriteResolvedintrigeri

Feature #8630: Clean up the rewritten Git repositoryResolvedintrigeri

Feature #8632: Make sure various clones of our Git repository are up-to-date wrt. the rewriteResolvedintrigeri

Feature #8631: Force push the rewritten Git repositoryResolvedintrigeri

Feature #8629: Replace rewritten (unsigned) Git tags with signed onesResolvedintrigeri

Feature #8628: Do the final rewrite of all branches and tagsResolvedintrigeri

Feature #8627: Communicate with contributors about the old Git repository being lockedResolvedintrigeri

Feature #8813: Reduce in size /blueprint/logoResolved

Feature #8818: Tell people rewriting the Git history which files should be removed /blueprint/logoResolved

Feature #8939: Check what still takes room in the rewritten Git repoResolvedintrigeri

Feature #8946: Reintroduce the contribute/how/promote directoryResolvedintrigeri

History

#1 Updated by intrigeri over 5 years ago

  • Category set to Infrastructure
  • Assignee set to intrigeri
  • Target version set to Sustainability_M1

#2 Updated by intrigeri over 5 years ago

  • Description updated (diff)

#3 Updated by intrigeri over 5 years ago

  • Related to Bug #7220: Ignore jenkins-{build,fetch}-* tags when generating reprepro configuration added

#4 Updated by intrigeri about 5 years ago

  • Blocked by deleted (Feature #6276: Migrate the website to its own Git repository)

#5 Updated by intrigeri about 5 years ago

  • Parent task deleted (#5506)

(We've rejected #6276, so the parent ticket doesn't make any sense anymore. "Orphaning" this one, then.)

#6 Updated by intrigeri about 5 years ago

  • Description updated (diff)

#7 Updated by intrigeri about 5 years ago

#8 Updated by intrigeri about 5 years ago

#9 Updated by intrigeri about 5 years ago

#10 Updated by intrigeri about 5 years ago

  • Related to Feature #7221: Write a script that deletes old merged Git branches added

#11 Updated by intrigeri about 5 years ago

  • Related to deleted (Feature #7221: Write a script that deletes old merged Git branches)

#12 Updated by intrigeri about 5 years ago

  • Blocked by Feature #7221: Write a script that deletes old merged Git branches added

#13 Updated by intrigeri about 5 years ago

  • Description updated (diff)

#14 Updated by intrigeri about 5 years ago

  • Description updated (diff)

#15 Updated by intrigeri almost 5 years ago

  • Blocked by deleted (Feature #7221: Write a script that deletes old merged Git branches)

#16 Updated by intrigeri almost 5 years ago

  • Related to deleted (Bug #7220: Ignore jenkins-{build,fetch}-* tags when generating reprepro configuration)

#17 Updated by intrigeri almost 5 years ago

#18 Updated by intrigeri almost 5 years ago

  • Target version changed from Sustainability_M1 to Tails_1.3.2

#19 Updated by intrigeri almost 5 years ago

  • Blocked by Feature #8617: Regularly delete obsolete Git branches and corresponding data in our APT repository added

#20 Updated by intrigeri over 4 years ago

  • Description updated (diff)

#21 Updated by intrigeri over 4 years ago

  • Description updated (diff)
  • Status changed from Confirmed to In Progress

#22 Updated by intrigeri over 4 years ago

  • Description updated (diff)

#23 Updated by intrigeri over 4 years ago

  • Description updated (diff)

#24 Updated by intrigeri over 4 years ago

  • Description updated (diff)

#25 Updated by intrigeri over 4 years ago

  • Blueprint set to https://tails.boum.org/blueprint/rewrite_Git_history/

#26 Updated by intrigeri over 4 years ago

  • Blocked by deleted (Feature #8617: Regularly delete obsolete Git branches and corresponding data in our APT repository)

#27 Updated by intrigeri over 4 years ago

  • Status changed from In Progress to Resolved

#28 Updated by BitingBird over 4 years ago

  • Target version changed from Tails_1.3.2 to Tails_1.3.1

Also available in: Atom PDF