日記帳
本ページはプロモーションが含まれています
カテゴリー
Links
blog(ブログ)マスター
アンドロイドの巣
ゼロから始めるベランダ菜園
タイトル
2024年11月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

[git] 既存のリポジトリを sha256 に移行してみた!

2024-11-04

タイトル


執筆:2024.11.04
編集:2024.11.04

sha256に変換することによるデメリット

  1. 新規リポジトリが必要になる
  2. 外部参照していた場合リンク切れになる。
  3. GUIツールが対応していない。
  4. SHA1 , SHA256が共存できない
    remote pushするとエラーになる。

2024-11-04 での情報

Git GUI
TortoiseGit
は、sha256に対応していません

git version 2.47.0.windows.1 / TortoiseGit 2.17.0.2

致命的なのは、GUIツールが対応していないことですね。

 

現時点では、不具合検出のため意図的に統合していないと考えられ、

sha1 sha256 どちらかの選択になるので、

ほかのバージョン管理ツールはsha1 sha256 共存できるものもありますので、

もう少しgitの今後の進展を静観しましょう。

変換する方法は、



既存のリポジトリ

git config --local extensions.objectFormat sha256

新しいリポジトリ

git init --object-format=sha256 new-repo
cd new-repo

グローバルに設定する

git config --global extensions.objectFormat sha256

完全に移行する場合

git fast-export --all > repo.export
git init --object-format=sha256 new-repo
cd new-repo

# 各種設定をしておく
# git config --local ...
# git remote add ...

# 取り込む
git fast-import < ../repo.export
git checkout main
git log -n 1

git gc --prune=now --aggressive
cd ..
mv .git .git.sha1
mv new-repo/.git ./


PR

[PR]