Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security & DevOps Insights

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form
Home » Version Control System » Error: cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve reference ‘refs/remotes/origin/windows’, Not a directory
  • Featured image externaldis
    How to fix the external display not working on Windows 11 Windows
  • article 1280x720.192a2586 1
    Windows 10 Always On VPN (AOVPN) Overview, features and Requirements Windows Server
  • stuck
    Fix Hyper-V VM Stuck in Stopping State Virtualization
  • screenshot 2020 02 08 at 17.23.28
    How to disable Password Change for all Exchange Server Users Network | Monitoring
  • image 23
    Copy Deployment Share between Servers without using linked Deployment Shares Windows
  • Azure Backup For AKS
    How to protect Azure Kubernetes Service (AKS) with Azure Backup AWS/Azure/OpenShift
  • powershell01 1
    Create a self-signed certificate and export it in PFX format via PowerShell [Part 1] Scripts
  • screenshot 2020 03 07 at 22.25.21
    How to configure the FrontFace Lockdown Tool Windows

Error: cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve reference ‘refs/remotes/origin/windows’, Not a directory

Posted on 08/02/202221/12/2023 Christian By Christian No Comments on Error: cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve reference ‘refs/remotes/origin/windows’, Not a directory
Error: cannot lock ref 'refs/remotes/origin/windows': unable to resolve reference 'refs/remotes/origin/windows', Not a directory

In this article, we shall discuss how to fix the Error: cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve reference ‘refs/remotes/origin/windows’, Not a directory. Kindly refer to these related guides: How to install, register and start GitLab Runner on Windows, Panic: Failed to register the GitLab-runner, you may be having network issues, how to clone a repository and install software from GitHub on Windows, how to install and uninstall Docker Desktop on Windows 10 and Windows Server, and how to install Git on macOS.

GitLab’s application offers functionality to collaboratively plan, build, secure, and deploy software as a complete DevOps Platform. You can host GitLab on-premises or on cloud storage since it offers high scalability. It also includes a wiki, issue-tracking, IDE, and CI/CD pipeline features.

After you install the application, you register individual runners. Registering a runner establishes communication between your GitLab instance and the machine with GitLab Runner installed. Runners usually process jobs on the same machine where you installed GitLab Runner.

GitLab Runner implements a few shell script generators that allow executing builds on different systems.

What causes the Issue?

The following error “unable to resolve reference” as seen below was because, in the config.toml file, a shell executor was specified in the config.toml file and this does not work well in Windows 10.

'unable to resolve reference' error when locking ref 'origin/windows'. 'Not a directory'

Below is the config.toml that caused the issue. The PowerShell script executes all commands within the PowerShell Core context. In GitLab Runner 14.0 and later, this is the default when registering a new runner.

This is why we had it in the file. This is not the complete config.toml file, this is just to show you what was wrong 🙂

concurrent = 1
check_interval = 0
[session_server]
  session_timeout = 1800
[[runners]]
  name = "docker-windows executor"
  url = "https://techdirectarchive.com"
  token = "xxxxxxxxxxxxxx"
  executor = "docker-windows"
    shell = "pwsh" -------------------------------------> This was the reason for the error
  [runners.custom_build_dir]

Kindly refer to this similar guide: Error, cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve ‘refs/remotes/origin/windows’: not a directory.

Resolving the Issue “Error: cannot lock ref ‘refs/remotes/origin/windows”

To resolve this issue, ensure the config.toml file is edited with notepad++ which is one of my preferred editors.

To do this, ensure notepad++ is installed on your device and then right-click on the config.toml file and select Notepad++. It should look like this below if you are running the docker-window executor without having to specify the shell = "pwsh".

concurrent = 1
check_interval = 0
[session_server]
  session_timeout = 1800
[[runners]]
  name = "docker-windows executor"
  url = "https://techdirectarchive.com"
  token = "xxxxxxxxxxxxxx"
  executor = "docker-windows"
  [runners.custom_build_dir]

Now that you have modified the config.toml file, you will have to restart the GitLab-runner service and the Docker-Desktop service and proceed to run the job again.

If everything is fine, the job will run and status showing the job has succeeded.

Running with gitlab-runner 14.7.0 (xxxx)
  on Windows runner with docker-windows executor XXXXXXXX
Preparing the "docker-windows" executor
00:01
Using Docker executor with image mcr.microsoft.com/windows:xxxx ...
Pulling docker image mcr.microsoft.com/windows:xxxx ...
Using docker image xxxxxx for mcr.microsoft.com/windows:xxxx with digest mcr.microsoft.com/windows@xxxxxxx ...
Preparing environment
00:04
Running on RUNNER-XXXXXXXXX via 
device-Niemand...
Getting source from Git repository
Fetching changes with git depth set to 50...
Reinitialized existing Git repository in ----
.
.
.
$ dir
    Directory: C:-------------
Mode                 LastWriteTime         Length Name                         
----                 -------------         ------ ----                         
-a----          2/6/20XX   1:57 PM            182 .gitlab-ci.yml               
$ echo %PATH%
%PATH%
Cleaning up project directory and file based variables
00:04
Job succeeded

Note: Since pwsh entry for the shell attribute in GitLab-runner config.toml does not work in Windows 10 devices correctly, instead of taking the shell = "pwsh" off, you can simply replace the “pwsh” with “PowerShell” and this would work as well. Therefore edit the confg.toml as discussed below.

  concurrent = 1
check_interval = 0
[session_server]
  session_timeout = 1800
[[runners]]
  name = "docker-windows executor"
  url = "https://techdirectarchive.com"
  token = "xxxxxxxxxxxxxx"
  executor = "docker-windows"
    shell = "powershell" -------------------------------------> This will also have the issue resolved
  [runners.custom_build_dir]

And then restarting GitLab-runner and the Docker-Desktop services will have this issue fixed.

gitlab-runner.exe restart

Refer to these similar errors: Install Git on Windows: The term “git” was not used as the name of a cmdlet, function, script file, or executable Program recognized, how to resolve “Failed to remove network for build: Error during connect in the default daemon configuration on Windows, the Docker client must be run with elevated privileges“, and how to resolve “failed to remove network for the build, Job failed error: Invalid volume specification: “/cache”.

I hope you found this blog post on how to fix “Error: cannot lock ref ‘refs/remotes/origin/windows’: unable to resolve reference ‘refs/remotes/origin/windows’, Not a directory” helpful. If you have any questions, please let me know in the comment session.

Rate this post

Thank you for reading this post. Kindly share it with others.

  • Click to share on X (Opens in new window) X
  • Click to share on Reddit (Opens in new window) Reddit
  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on Pinterest (Opens in new window) Pinterest
  • Click to share on Tumblr (Opens in new window) Tumblr
  • Click to share on Telegram (Opens in new window) Telegram
  • Click to share on WhatsApp (Opens in new window) WhatsApp
  • Click to share on Pocket (Opens in new window) Pocket
  • Click to share on Mastodon (Opens in new window) Mastodon
  • Click to share on Bluesky (Opens in new window) Bluesky
  • Click to share on Threads (Opens in new window) Threads
  • Click to share on Nextdoor (Opens in new window) Nextdoor
Version Control System Tags:Git, GitLab, GitLab-Runner

Post navigation

Previous Post: Microsoft BitLocker Administration and Monitoring Report Fields
Next Post: Error 1385: The user has not been granted the requested logon type at this time

Related Posts

  • term “git” was not used as the name of a cmdlet, function, script file, or executable Program recognised
    The term “git” was not used as the name of a cmdlet, function, script file, or executable Program recognized Version Control System
  • UnregisterGitLabRunner
    How to unregister GitLab Runner in Windows Version Control System
  • GitVulfix456zgfbn
    Git Vulnerability: Git for Windows uninstaller is vulnerable to DLL hijacking when run under the SYSTEM user account Version Control System
  • DevOps
    Create an App Service Plan with Continuous Deployment to deploy a .NET Application from GitHub AWS/Azure/OpenShift
  • Screenshot 2024 02 28 at 11.17.41 PM
    GitHub Pages Deployment Guide Linux
  • git pull error
    Failed to pull image with the policy “always” error from the daemon Version Control System

More Related Articles

term “git” was not used as the name of a cmdlet, function, script file, or executable Program recognised The term “git” was not used as the name of a cmdlet, function, script file, or executable Program recognized Version Control System
UnregisterGitLabRunner How to unregister GitLab Runner in Windows Version Control System
GitVulfix456zgfbn Git Vulnerability: Git for Windows uninstaller is vulnerable to DLL hijacking when run under the SYSTEM user account Version Control System
DevOps Create an App Service Plan with Continuous Deployment to deploy a .NET Application from GitHub AWS/Azure/OpenShift
Screenshot 2024 02 28 at 11.17.41 PM GitHub Pages Deployment Guide Linux
git pull error Failed to pull image with the policy “always” error from the daemon Version Control System

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

VEEAMLEGEND

vexpert-badge-stars-5

Virtual Background

GoogleNews

Categories

veeaam100

sysadmin top30a

  • Featured image externaldis
    How to fix the external display not working on Windows 11 Windows
  • article 1280x720.192a2586 1
    Windows 10 Always On VPN (AOVPN) Overview, features and Requirements Windows Server
  • stuck
    Fix Hyper-V VM Stuck in Stopping State Virtualization
  • screenshot 2020 02 08 at 17.23.28
    How to disable Password Change for all Exchange Server Users Network | Monitoring
  • image 23
    Copy Deployment Share between Servers without using linked Deployment Shares Windows
  • Azure Backup For AKS
    How to protect Azure Kubernetes Service (AKS) with Azure Backup AWS/Azure/OpenShift
  • powershell01 1
    Create a self-signed certificate and export it in PFX format via PowerShell [Part 1] Scripts
  • screenshot 2020 03 07 at 22.25.21
    How to configure the FrontFace Lockdown Tool Windows

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,841 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon

Tags

AWS Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2025 TechDirectArchive

 

Loading Comments...
 

You must be logged in to post a comment.