Skip to content

Unable to revert git refs migrate --ref-format=reftable #5962

@kklocker

Description

@kklocker

Existing issues matching what you're seeing

  • I was not able to find an open or closed issue matching what I'm seeing

Git for Windows version

git version 2.51.2.windows.1
cpu: x86_64
built from commit: bd2ecbae58213046a468256b95fc4864de25bdf5
sizeof-long: 4
sizeof-size_t: 8
shell-path: D:/git-sdk-64-build-installers/usr/bin/sh
feature: fsmonitor--daemon
libcurl: 8.16.0
OpenSSL: OpenSSL 3.5.4 30 Sep 2025
zlib: 1.3.1
SHA-1: SHA1_DC
SHA-256: SHA256_BLK
default-ref-format: files
default-hash: sha1

Windows version

Windows 11

Windows CPU architecture

x86_64 (64-bit)

Additional Windows version information

Microsoft Windows [Version 10.0.26100.6899]

Options set during installation

Defaults (i think)
---
Editor Option: VIM
Custom Editor Path:
Default Branch Option:
Path Option: Cmd
SSH Option: OpenSSH
Tortoise Option: false
CURL Option: OpenSSL
CRLF Option: CRLFAlways
Bash Terminal Option: MinTTY
Git Pull Behavior Option: Merge
Use Credential Manager: Enabled
Performance Tweaks FSCache: Enabled
Enable Symlinks: Disabled
Enable FSMonitor: Disabled

Other interesting things

Here is the error message from git fetch which got me curious to investigate
Image

Don't know how relevant it is, but here is an extract from git config --list.

diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/etc/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager
init.defaultbranch=master
push.autosetupremote=true
core.repositoryformatversion=1
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.symlinks=false
core.ignorecase=true
core.hookspath=scripts/git/hooks
core.commitgraph=true
remote.origin.url=<redacted>
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*

Terminal/shell

Powershell (Core) through Terminal

Commands that trigger the issue

`git fetch`
`git refs migrate --ref-format=reftable`
`git refs migrate --ref-format=files`

Expected behaviour

Migrating back from reftable to files (after figuring out that this is not supported on .NET 8), should work.

Actual behaviour

  1. The repository is in a "invalid state"
  2. running git refs migrate --ref-format=files
    fails with an error locking refs
Image

When checking, the file doesn't exist. There is also no other git-process running. Tested with the classic restart :)

Workaround: Delete and re-clone the repository 😅

Repository

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions