Skip to content

Conversation

@Maoyao233
Copy link

Description

This PR upgrades the internal usage of actions/checkout (from v3) to resolve a critical compatibility issue when users use actions/checkout@v6 in their parent workflow.

The Issue

If a user utilizes actions/checkout@v6 in their workflow, they may encounter the following error when this action runs:

remote: Duplicate header: "Authorization"
Error: fatal: unable to access '...': The requested URL returned error: 400

This is caused by a conflict in how Git credentials are persisted between different versions of actions/checkout:

  • User Side (v6): As per actions/checkout#2286, newer versions of checkout persist credentials in a separate config file referencing includeIf, instead of modifying .git/config directly.
  • Action Side (v3): The current version in this action modifies the local .git/config.
  • Conflict: When git fetch/push is executed inside this action, both the global credential (from v6) and the local credential (from v3) are applied, resulting in two Authorization headers and a 400 Bad Request error from GitHub.

Fix

Upgrading the internal action dependency aligns the credential management mechanism and prevents the "Double Auth" conflict. I have verified this fix in a forked version.

@fritx
Copy link
Member

fritx commented Jan 23, 2026

Thanks for you feedbacck! ❤️ Maybe we will provide both v3 and v6.

However, there is something wrong with the workflow, will take some time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants