Jak konvertovat Git repozitář z SHA1 na SHA256 a zpět

Základní trik je exportovat git bundle a poté ho importovat znovu do nově inicializovaného repository.

Poznamenejte, že nové repository nebude kompatibilní se starým - zatímco obsahuje stejné commity, tato migrační strategie neposkytuje žádnou přímou kompatibilitu

Jak migrovat z SHA1 repository na SHA256

git_bundle_migrate.sh
# Create new repo with SHA-256
git init --object-format=sha256 new-repo

# Move into old repo directory and create bundle
cd old-repo
git bundle create ../repo-bundle --all

# Move to new repo and unbundle
cd ../new-repo
git bundle unbundle ../repo-bundle

# Verify branches
git branch -a

Jak migrovat z SHA256 repository na SHA1

git_bundle_migrate_back.sh
# Create new repo with SHA-1
git init --object-format=sha1 new-repo

# Move into old repo directory and create bundle
cd old-repo
git bundle create ../repo-bundle --all

# Move to new repo and unbundle
cd ../new-repo
git bundle unbundle ../repo-bundle

# Verify branches
git branch -a

Podívejte se na podobné články podle kategorie: Git