Blender Projects is moving its Git SSH domain to git.blender.org

In order to make several improvements to our infrastructure the Git SSH domain of our Gitea instance will be moved from projects.blender.org to git.blender.org.

:warning: On July 1 2025 projects.blender.org stops working as Git SSH remote :warning:
Read all the instructions below to see how you can resolve issues before the switchover.

To be able to keep using Projects via Git, please change your local remotes to use this new domain.

In the main blender repository, we’ve added functionality to make update that will automatically convert your local git remotes to the right ones.

In other cases, the steps below will most likely suffice:

The example below uses the origin remote and the repository blender/blender. Obviously, for other repositories or remotes you would need to use their respective values:

  1. Open your terminal and change your directory to the root of your repository
  2. Run git remote -v and observe its output
    • If you see:

      origin  [email protected]:blender/blender.git (fetch)
      origin  [email protected]:blender/blender.git (push)
      

      You’re good! :tada:

    • If you see:

      origin https://projects.blender.org/blender/blender.git (fetch)
      origin https://projects.blender.org/blender/blender.git (push)
      

      You’re good! :tada: Since you’re using HTTPS, no changes are required.

    • If you see:

      origin  [email protected]:blender/blender.git (fetch)
      origin  [email protected]:blender/blender.git (push)
      

      You should change your remote by running

      git remote set-url origin [email protected]:blender/blender.git
      
  3. Be aware that on the next time you interact with this new remote via Git you will be prompted to accept the server’s key fingerprint again under this domain name. This will look as follows:
    The authenticity of host 'git.blender.org (2a01:4f8:2191:3457::2)' can't be established.
    RSA key fingerprint is SHA256:ny+vcWlA5GVdVJFduVmBIyCthgqmNAXdNShi/QSv//U.
    This host key is known by the following other names/addresses:
    ~/.ssh/known_hosts:10: projects.blender.org
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    
    Note: It might say git.blender.org (168.119.195.207) when you are connecting via IPv4

For any help or questions related to these changes, please use #devops or message me privately at @bartvdbraak:blender.org.


FAQ

1. Why am I receiving a REMOTE HOST IDENTIFICATION HAS CHANGED! warning?

If you get the message below, you should not panic.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
SHA256:ny+vcWlA5GVdVJFduVmBIyCthgqmNAXdNShi/QSv//U.
Please contact your system administrator.
Add correct host key in /home/<user>/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/<user>/.ssh/known_hosts:1
  remove with:
  ssh-keygen -f '/home/<user>/.ssh/known_hosts' -R 'git.blender.org'
Host key for git.blender.org has changed and you have requested strict checking.
Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Blender has a history of using different version control management systems. If you were contributing to Blender in the time when Phabricator was used, you might get this message. In that case, it’s safe to follow the instructions given to remove this fingerprint from your known_hosts file using:

ssh-keygen -f ~/.ssh/known_hosts -R git.blender.org
7 Likes

For windows users using tortoisegit go to Settings->Remote and edit this guy

For users that have Pageant/plink setup on windows for auth, when you pull with git the first time, it may ask you accept the new host key, but it won’t take any keyboard input… (yeah, i got nothing there) and get stuck, to work around that issue, run plink [email protected] once and accept the key and you should be good to go after that!

3 Likes

Also, I used the following script to change all remotes of all repos on my system:

#!/usr/bin/env bash

# Use current directory if no argument is provided, otherwise use the first argument
BASE_DIR="${1:-$(pwd)}"

# Find all directories containing a .git folder
find "$BASE_DIR" -type d -name ".git" | while read -r gitdir; do
    repo_dir=$(dirname "$gitdir")
    echo "Checking repo: $repo_dir"
    cd "$repo_dir" || continue

    # Get all remote names and URLs
    git remote -v | while read -r name url _; do
        # Check for the specific pattern
        if [[ "$url" =~ ^git@projects\.blender\.org:([^/]+)/([^/]+)\.git$ ]]; then
            org="${BASH_REMATCH[1]}"
            repo="${BASH_REMATCH[2]}"
            new_url="[email protected]:${org}/${repo}.git"

            echo "Updating remote '$name' in $repo_dir"
            git remote set-url "$name" "$new_url"
        fi
    done
done

Source: Sign in - Blender ID - blender.org

If you run it without arguments, it’ll search from your current directory but if you give it an arg it will use that as starting directory.

DISCLAIMER: I’ve only tested this on linux and please read the code before executing.

1 Like

Hi, getting : Host 'git.blender.org' not found in C:/Users/prati/.ssh/known_hosts
But record of that domain exist in the file :melting_face:

Did you get the REMOTE HOST IDENTIFICATION HAS CHANGED! warning message?

If not, you don’t have to run ssh-keygen -f ~/.ssh/known_hosts -R git.blender.org.

I also see you’re on Windows, so I might have overlooked something since I am on Linux.

1 Like

Yes, ran into that warning first. Sent you the complete logs in chat :slight_smile:

Edit: looks like it has been resolved now. I double quoted file path and domain:
ssh-keygen -f "~/.ssh/known_hosts" -R "git.blender.org"

so running make update added an lfs-fallback remote now.
What’s that about?

As far as I know it’s for when people clone the repository from our GitHub read-only mirror to make sure they retrieve any missing Git LFS objects from the correct remote.

The lfs-fallback is a mechanism to allow github mirrors to fetch LFS from our servers.

I think there is a tweak to the detection when the lfs-fallback is needed we need to make: #140647 - Make update: Tweak logic for the LFS fallback - blender - Blender Projects

1 Like

Possible improvements to the notice:

Currently it assumes that the origin points to the user git repo, but according to our documentation it is more likely to be me.

remote: *********************************************************************************
remote: * IMPORTANT NOTICE                                                              *
remote: * Blender Projects is moving its Git SSH domain to git.blender.org!             *
remote: * If you haven't already, please update your Git remote:                        *
remote: git remote set-url origin [email protected]:<user-name>/blender.git
remote: *                                                                               *
remote: * More information: https://devtalk.blender.org/t/blender-projects-is-moving-its-git-ssh-domain-to-git-blender-org/41098 *
remote: *********************************************************************************

Perhaps we should consider:

remote: git remote set-url origin [email protected]:blender/blender.git
remote: git remote set-url me [email protected]:<user-name>/blender.git
1 Like

The way we handle/recommend remote naming is… confusingly annoying at best.

AFAIR, make update supports both cases:

  • ‘github’-type, origin is own fork, upstream is git.blender.org:blender.
  • ‘blender’-type, origin is git.blender.org:blender, me is own fork…

So I would rather recommend something more generic in that hook message, something like that:

*********************************************************************************
* IMPORTANT NOTICE                                                              *
* Blender Projects is moving its Git SSH domain to git.blender.org!             *
* If you haven't already, please update your Git remotes to use the             *
* [email protected] host instead of the [email protected] one.         *
*                                                                               *
* More information:                                                             *
* https://devtalk.blender.org/t/blender-projects-is-moving-its-git-ssh-domain-to-git-blender-org/41098 *
*********************************************************************************

Users who need more detailed explanations and instructions can follow the link to the devtalk post.

1 Like

I will look into changing it into this message today.

On Linux any quotes prevent the shell to expand the home directory “~”.

You only have to quote if you have spaces in strings. Don’t know for Windows and Mac, but on Linux just use:

ssh-keygen -f ~/.ssh/known_hosts -R git.blender.org

1 Like

I edited the command to reflect this in the original post, thank you!

2 Likes

These changes will be deployed shortly, meaning that the projects.blender.org domain will cease to work for any Git operations over SSH.

EDIT: These changes have landed.

1 Like