Skip to content

Sublime Merge - SHA-256 Repos - Index Build Failure - Tracked Files Untracked #2075

@Sn3akyP3t3

Description

@Sn3akyP3t3

Version info

  • OS: Windows 10
  • Build: 2110

Description

Sublime Merge fails to correctly parse and display repositories initialized with Git's SHA-256 object format. Committed and tracked files (e.g., .gitignore, LICENSE, README.md from an initial commit) appear as untracked in the Sublime Merge UI, despite being properly committed and shown as clean in Git CLI tools like Git Bash. Additionally, the integrated terminal in Sublime Merge shows an error: "failed to build index table". This seems related to Sublime Merge's custom Git parsing library not supporting SHA-256, as the issue does not occur with standard SHA-1 repositories.

Note: SHA-256 support in Git has been available since version 2.29 (2020) and stabilized in 2.42 (2023), with Git 3.0 potentially defaulting to it soon. As more users adopt SHA-256 for security reasons, this lack of support could become a significant limitation for Sublime Merge.

Steps to reproduce

  1. Install Git for Windows (version 2.46 or later, which supports SHA-256).
  2. Create a new repository with SHA-256 format: In Git Bash, run git init --object-format=sha256 test-repo and navigate into it.
  3. Add and commit initial files: echo "# Test" > README.md, git add README.md, git commit -m "Initial commit".
  4. Open the repository in Sublime Merge (File > Open Repository... > select the test-repo folder).
  5. View the status in Sublime Merge: The README.md file shows as untracked (red icon), even though git status in Git Bash shows a clean working tree.
  6. Open the Sublime Merge terminal (via the console or command palette) and run a command like git status—observe the "failed to build index table" error.

Expected behavior

Sublime Merge should correctly parse the SHA-256 repository, displaying committed files as tracked (green icon or no staging needed) and showing a clean status matching Git CLI output. No "failed to build index table" error should appear, as the tool should support modern Git formats like SHA-256 for full compatibility.

Debug Information
Omitted section. This bug is super easy and quick to recreate so I won't put effort into gathering this.

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