Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add explicit bareRepository configuration when pushing bare mirror #35338

Merged
merged 2 commits into from
Dec 17, 2024

Conversation

jdknight
Copy link
Contributor

Why:

Was following the instructions outlined in Detaching a fork and noticed that step 5 was failing for me.

What's being changed (if available, include any code snippets, screenshots, or gifs):

If a user has configured bareRepository=explicit in their configuration, the push operation in this example will fail with the message:

fatal: cannot use bare repository '<path>.git' (safe.bareRepository is 'explicit')

By adding -c "safe.bareRepository=all" to the default instruction set, this should prevent issues for users who have bareRepository configured.

Check off the following:

  • I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

    • For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data directory.
  • For content changes, I have completed the self-review checklist.

Copy link

welcome bot commented Nov 19, 2024

Thanks for opening this pull request! A GitHub docs team member should be by to give feedback soon. In the meantime, please check out the contributing guidelines.

@github-actions github-actions bot added the triage Do not begin working on this issue until triaged by the team label Nov 19, 2024
Copy link
Contributor

github-actions bot commented Nov 19, 2024

Automatically generated comment ℹ️

This comment is automatically generated and will be overwritten every time changes are committed to this branch.

The table contains an overview of files in the content directory that have been changed in this pull request. It's provided to make it easy to review your changes on the staging site. Please note that changes to the data directory will not show up in this table.


Content directory changes

You may find it useful to copy this table into the pull request summary. There you can edit it to share links to important articles or changes and to give a high-level overview of how the changes in your pull request support the overall goals of the pull request.

Source Preview Production What Changed
pull-requests/collaborating-with-pull-requests/working-with-forks/detaching-a-fork.md fpt
ghec
ghes@ 3.15 3.14 3.13 3.12 3.11 3.10
fpt
ghec
ghes@ 3.15 3.14 3.13 3.12 3.11 3.10

fpt: Free, Pro, Team
ghec: GitHub Enterprise Cloud
ghes: GitHub Enterprise Server

@nguyenalex836
Copy link
Contributor

@jdknight Thanks so much for opening a PR! I'll get this triaged for review ✨

@nguyenalex836 nguyenalex836 added content This issue or pull request belongs to the Docs Content team waiting for review Issue/PR is waiting for a writer's review pull requests Content related to pull requests and removed triage Do not begin working on this issue until triaged by the team labels Nov 19, 2024
@subatoi subatoi added the needs SME This proposal needs review from a subject matter expert label Nov 19, 2024
Copy link
Contributor

Thanks for opening a pull request! We've triaged this issue for technical review by a subject matter expert 👀

@nguyenalex836 nguyenalex836 added SME reviewed An SME has reviewed this issue/PR and removed waiting for review Issue/PR is waiting for a writer's review needs SME This proposal needs review from a subject matter expert labels Dec 4, 2024
@nguyenalex836
Copy link
Contributor

@jdknight Thank you for your patience while our SME team reviewed! 💛 Our SMEs reviewed and responded with the following:


The problem they're trying to fix sounds real to me, but I think their solution is a bit complicated. The git-config(1) manual page has this to say about safe.bareRepository setting's explicit value:

explicit: Git only works with bare repositories specified via the top-level --git-dir command-line option, or the GIT_DIR environment variable (see git(1)).

So, instead of:
git -c "safe.bareRepository=all" push --mirror https://github.com/EXAMPLE-USER/FORK-NAME.git

I think the correct answer would be something more like:
git --git-dir https://github.com/EXAMPLE-USER/FORK-NAME.git push --mirror

Those will both do the same thing in practice, but this version is getting there without needing to override a setting.


If you are able to update your PR to match what our SME provided, we will be happy to get this merged ✨ thank you!

@nguyenalex836 nguyenalex836 added the more-information-needed More information is needed to complete review label Dec 4, 2024
If a user has configured `bareRepository=explicit` in their
configuration, the push operation in this example will fail with the
message:

    fatal: cannot use bare repository '<path>.git' (safe.bareRepository is 'explicit')

By adding `-c "safe.bareRepository=all"` to the default instruction set,
this should prevent issues for users who have bareRepository configured.

Signed-off-by: James Knight <[email protected]>
@jdknight
Copy link
Contributor Author

jdknight commented Dec 5, 2024

  • Tweaked the command to use --git-dir <bare> over moving (cd) into the bare before trying to push up the mirror.
  • This drops the requirements of cding in and out of the bare repository.
  • Tweaked FORK-NAME to just FORK to minimize the longer command length in an attempt to fit the command on a single line.

@github-actions github-actions bot added the stale There is no recent activity on this issue or pull request label Dec 12, 2024
Copy link
Contributor

This PR has been automatically closed because there has been no response to to our request for more information from the original author. Please reach out if you have the information we requested, or open a new issue to describing your changes. Then we can begin the review process.

@github-actions github-actions bot closed this Dec 12, 2024
@nguyenalex836 nguyenalex836 reopened this Dec 12, 2024
@github-actions github-actions bot added the triage Do not begin working on this issue until triaged by the team label Dec 12, 2024
@nguyenalex836
Copy link
Contributor

@jdknight Apologies on behalf of our bot! Your latest updates are being reviewed by our SME team, and I'll ping you here as soon as I have a response from them 💛

@nguyenalex836 nguyenalex836 removed triage Do not begin working on this issue until triaged by the team stale There is no recent activity on this issue or pull request more-information-needed More information is needed to complete review labels Dec 12, 2024
Copy link

@wiseemily88 wiseemily88 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested out the steps and this worked for me!

@nguyenalex836
Copy link
Contributor

@wiseemily88 Thank you very much for the review! ✨

@jdknight Thank you again for opening this PR! I'll update the branch and get this merged once tests are passing 💛

@nguyenalex836 nguyenalex836 added this pull request to the merge queue Dec 17, 2024
Merged via the queue into github:main with commit 1367c2f Dec 17, 2024
44 checks passed
Copy link
Contributor

Thanks very much for contributing! Your pull request has been merged 🎉 You should see your changes appear on the site in approximately 24 hours. If you're looking for your next contribution, check out our help wanted issues

@jdknight jdknight deleted the patch-1 branch December 18, 2024 00:06
shahedy2276541

This comment was marked as spam.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
content This issue or pull request belongs to the Docs Content team pull requests Content related to pull requests SME reviewed An SME has reviewed this issue/PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants