สิ่งที่เกิดขึ้นจริงกับ fork
การตั้งค่า visibility ของ repository ควบคุม repository ต้นฉบับ ไม่ได้ควบคุมสำเนาที่ผู้อื่น fork ไปแล้ว การเปลี่ยน visibility ไม่ได้เข้าไปถึง fork เหล่านั้น
เมื่อ public GitHub repository กลายเป็น private public fork ที่มีอยู่จะถูกแยกออกไปยังเครือข่ายใหม่และยังคงเป็น public แหล่งที่มา
นั่นหมายความว่า public fork อาจยังแสดงโค้ด ประวัติ commit และรายละเอียดผู้เขียน หลังจาก repository ของคุณเป็น private แล้ว มองการทำ private เป็นการเปลี่ยนแปลงการเปิดเผยของ repository คุณ ไม่ใช่การเรียกคืนสำเนาสาธารณะ
การเปลี่ยน visibility ทำอะไรและไม่ทำอะไร
| การกระทำ | สิ่งที่ได้รับผลกระทบ | สิ่งที่ไม่ได้ทำ |
|---|---|---|
| สลับ repository เป็น private | visibility ของ repository ต้นฉบับ ใน Settings ภายใต้สิทธิ์ | ลบ public fork หรือสำเนาที่อยู่ที่อื่น |
| เปลี่ยน visibility ของ fork | เฉพาะ fork นั้น | รับประกันว่า fork หรือ mirror อื่นจะหายไป |
| แก้ไขหรือลบไฟล์ใน repository ของคุณ | เนื้อหาปัจจุบันของ repository คุณ | ลบประวัติที่เผยแพร่ใน fork แล้ว |
visibility ของ repository สามารถเปลี่ยนได้ใน Settings ของ repository ภายใต้สิทธิ์ของบัญชีหรือองค์กร แหล่งที่มา
การทำ private ไม่ใช่เครื่องมือลบ ไม่ใช่การลบชื่อผู้เขียน และไม่ใช่การหมุนเวียนข้อมูลรับรอง หากมีความลับถูก commit ไว้ การเปลี่ยน visibility ไม่ได้ทำให้ปลอดภัย ต้องหมุนเวียนผ่านบริการที่เกี่ยวข้อง
รายการตรวจสอบก่อนเปลี่ยน
- แสดงรายการ public fork เปิดรายการ fork ของ repository และจดบันทึกว่า fork ใดเป็น public และใครเป็นเจ้าของ
- ตรวจสอบลิงก์ที่เผยแพร่ ค้นหาเว็บไซต์ เอกสาร และ metadata ของแพ็กเกจของคุณสำหรับลิงก์ไปยัง repository หรือไฟล์ raw
- ตรวจสอบตัวตนใน commit ตรวจสอบว่าชื่อผู้เขียน commit และที่อยู่อีเมลเป็นรายละเอียดที่คุณสบายใจที่จะเปิดเผยหรือไม่
- ตรวจสอบสำเนาอื่น มองหา mirror สำเนาที่ vendored และ snapshot ที่เก็บถาวรซึ่งอยู่นอกเครือข่าย fork ของ GitHub
- ตัดสินใจแยกตาม fork สำหรับ fork ที่คุณควบคุม ให้ตรวจสอบ visibility แยกต่างหาก สำหรับ fork ที่คุณไม่ควบคุม ให้ถือว่ายังคงเป็น public
- หมุนเวียนความลับที่เปิดเผย หากข้อมูลรับรองปรากฏใน commit ให้หมุนเวียนแทนการพึ่งพาการเปลี่ยน visibility
ตัดสินใจก่อนสลับ visibility
| สถานการณ์ | การดำเนินการที่สมเหตุสมผล |
|---|---|
| มี public fork และมีโค้ดที่ละเอียดอ่อน | ติดต่อเจ้าของ fork หากเป็นไปได้ และถือว่าสำเนาสาธารณะยังคงอยู่ |
| คุณเป็นเจ้าของ fork | ตรวจสอบ visibility ของแต่ละ fork แยกต่างหาก |
| มีความลับถูก commit | หมุนเวียนข้อมูลรับรองก่อน |
| มีเพียง repository ของคุณที่เปิดเผย | การเปลี่ยน visibility ใน Settings อาจเพียงพอ ภายใต้สิทธิ์ |
การเปิดเผยชื่อผู้ใช้เกี่ยวข้องอย่างไร
repository เป็นเพียงหนึ่งพื้นผิวสาธารณะท่ามกลางหลายแห่ง GitHub handle และตัวตนใน commit ของคุณอาจปรากฏบนเว็บไซต์อื่นด้วย และการค้นหาชื่อผู้ใช้เป็นเพียงเบาะแส ไม่ใช่หลักฐานความเป็นเจ้าของ TraceSeek ตรวจสอบ 3,000+ แพลตฟอร์มและมีการสแกนครั้งแรกฟรี โดยระบุเวลาสแกนที่ 20–30 วินาที ไม่ได้เปลี่ยนการตั้งค่าแพลตฟอร์ม ไม่เห็นข้อมูลส่วนตัว หรือยืนยันตัวตน สำหรับการตรวจสอบบัญชีเก่าที่กว้างขึ้น ดู ค้นหาบัญชีออนไลน์ที่ถูกลืม สำหรับวิธีที่เราจัดกรอบหลักฐาน ดู วิธีการ
ข้อเท็จจริงสำคัญ
- เมื่อ public GitHub repository กลายเป็น private public fork ที่มีอยู่จะถูกแยกออกไปยังเครือข่ายใหม่และยังคงเป็น public
- visibility ของ repository สามารถเปลี่ยนได้ใน Settings ของ repository ภายใต้สิทธิ์ของบัญชีหรือองค์กร
- การทำ repository เป็น private ไม่ได้ลบ public fork ไม่ได้ลบชื่อผู้เขียน และไม่ได้หมุนเวียนข้อมูลรับรองที่เปิดเผย
- TraceSeek ครอบคลุม 3,000+ แพลตฟอร์มและมีการสแกนครั้งแรกฟรี