this post was submitted on 24 Jul 2024
218 points (95.4% liked)

Open Source

31253 readers
213 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 11 points 3 months ago (1 children)

(unforked repos that are forks are also affected.)

[–] [email protected] 7 points 3 months ago (1 children)

Yes, but only in very limited circumstances. If you:

  1. fork a private repo with commit A into another private repo
  2. add commit B in your fork
  3. someone makes the original repo public
  4. You add commit C to the still private fork

then commits A and B are publicly visible, but commit C is not.

Per the linked Github docs:

If a public repository is made private, its public forks are split off into a new network.

Modifying the above situation to start with a public repo:

  1. fork a public repository that has commit A
  2. make commit B in your fork
  3. You delete your fork

Commit B remains visible.

A version of this where step 3 is to take the fork private isn’t feasible because you can’t take a fork private - you have to duplicate the repo. And duplicated repos aren’t part of the same repository network in the way that forks are, so the same situation wouldn’t apply.

[–] [email protected] 4 points 3 months ago

The second situation you listed is incredibly common, as the blog post explains.