Skip to content

[WIP] Git submodule URL protocol specification causes issues when forking repository#734

Merged
pardeike merged 2 commits intomasterfrom
copilot/fix-5984d81a-269d-4cc4-b267-cd5e357deede
Sep 29, 2025
Merged

[WIP] Git submodule URL protocol specification causes issues when forking repository#734
pardeike merged 2 commits intomasterfrom
copilot/fix-5984d81a-269d-4cc4-b267-cd5e357deede

Conversation

Copy link
Contributor

Copilot AI commented Sep 29, 2025

  • Analyze the issue: Git submodule uses SSH URL causing fork/clone problems
  • Identify the problem: .gitmodules contains git@github.com:pardeike/MonoMod.git
  • Confirm the issue: Submodule update fails in environments without SSH access
  • Update .gitmodules to use HTTPS URL instead of SSH URL
  • Test the fix: Verify submodule can be cloned with HTTPS URL
  • Validate build works: Ensure the change doesn't break existing functionality
  • Final verification: Test fresh clone scenario with successful build

Solution Summary

Changed the submodule URL in .gitmodules from SSH (git@github.com:pardeike/MonoMod.git) to HTTPS (https://github.com/pardeike/MonoMod.git).

This resolves fork and clone issues that occur when:

  • Users don't have SSH keys set up
  • CI/CD environments prefer HTTPS access
  • Network configurations block SSH protocols
  • Contributors are working with forked repositories

The fix is minimal, surgical, and maintains full functionality while improving accessibility for contributors.

Original prompt

This section details on the original issue you should resolve

<issue_title>Git submodule URL protocol specification causes issues when forking repository</issue_title>
<issue_description>## Issue Description
When forking and cloning this repository, there are issues with the Git submodule URLs and their protocol specification. The current submodule configuration can cause problems during the fork and clone process.

Problem Details

When a repository with submodules is forked, the submodule URLs maintain their original protocol specification. This can lead to:

  1. Authentication issues when pulling submodules
  2. Inconsistent protocol usage across different environments
  3. Potential access problems depending on user's git configuration and network setup

Impact

  • Fork operations may require additional manual intervention
  • Clone operations might fail when pulling submodules
  • Users may need to manually adjust submodule configurations

Reproduction Steps

  1. Fork the Harmony repository
  2. Clone the forked repository
  3. Observe issues with submodule initialization/update due to protocol specifications

Suggested Solution

Update the submodule URLs to use protocol-relative URLs or ensure consistent protocol usage that works well with forking workflows.

Environment

  • Git version: Latest
  • Platform: All
  • Operation: Repository fork and clone with submodules

Additional Notes

This issue affects the repository's accessibility and ease of contribution, particularly for new contributors working with forks.

References

For more information about handling Git submodule protocols and similar issues, see:

Comments on the Issue (you are @copilot in this section)

Fixes #733

💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

…bility

Co-authored-by: pardeike <853584+pardeike@users.noreply.github.com>
Copilot AI requested a review from pardeike September 29, 2025 05:02
@pardeike pardeike marked this pull request as ready for review September 29, 2025 05:06
@pardeike pardeike merged commit 60f9708 into master Sep 29, 2025
4 checks passed
@pardeike pardeike deleted the copilot/fix-5984d81a-269d-4cc4-b267-cd5e357deede branch September 29, 2025 05:07
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.

Git submodule URL protocol specification causes issues when forking repository

2 participants