Case-only filename changes are not reflected in Bitbucket Data Center

Platform Notice: Data Center Only - This article only applies to Atlassian apps on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

Changing the capitalisation of a filename in a local working copy, for example, renaming file.txt to File.txt, is not reflected in Bitbucket Data Center after the branch is pushed. Bitbucket continues to display the filename using its original capitalisation.

Diagnosis

This issue occurs in Bitbucket Data Center when using Git clients on case-insensitive filesystems, including Windows systems using the standard NTFS configuration and macOS systems with case-insensitive volumes. After changing the filename capitalisation through a file manager (Explorer or Finder), command line terminal, or through an IDE, run:

git status

Observe that Git reports no changes, or the case-only rename does not appear among the changes to be committed.

Cause

Git tracks filenames using case-sensitive paths.

However, Windows and macOS systems with case-insensitive volumes treat filenames that differ only by capitalisation as the same path.

When a repository is initialised or cloned, Git checks whether the local filesystem distinguishes between filenames that differ only by letter case. On a case-insensitive filesystem, Git sets the repository-specific configuration option core.ignoreCase to true. This setting helps Git reconcile its case-sensitive index with a case-insensitive working directory.

For example, when Git expects file.txt but finds File.txt, it may treat them as the same file and retain the original path recorded in the index.

Changing only the filename’s capitalisation might not appear in git status or be included in the next commit. Because the resulting commit does not include the filename change, Bitbucket Data Center continues to display the path from the previous commit

Solution

To resolve this issue on case-insensitive systems, Git must explicitly be notified of the rename using the git mv command. This updates the Git index with the correct capitalisation.

Method 1: Use the force flag

Use git mv to rename the file and explicitly update the Git index:

  1. Rename the file using the force flag:

    git mv -f path/to/file.txt path/to/File.txt

  2. Confirm that the rename has been staged:

    git status

  3. Commit and push the change:

    git commit -m "Correct filename capitalisation " git push origin <branch-name>

After the push completes, Bitbucket Data Center will display the corrected filename in the UI.

Method 2: Use a temporary filename

If the direct case-only rename fails for any reason, rename the file through a temporary filename:

  1. Rename the file to a temporary name:

    git mv path/to/file.txt path/to/file.tmp

  2. Rename the temporary file to the final desired capitalisation:

    git mv path/to/file.tmp path/to/File.txt

  3. Commit and push the change:

    git commit -m "Correct filename capitalisation " git push origin <branch-name>

After the push completes, Bitbucket Data Center will display the corrected filename in the UI.

Updated on September 21, 2026

Still need help?

The Atlassian Community is here for you.