ย้ายที่เก็บข้อมูล GitHub LFS (Git Large File Storage) ไปยัง AWS CodeCommit
- Tan Shuai
- การพัฒนาซอฟต์แวร์
- 09 Feb, 2022
ฉันเพิ่งย้ายที่เก็บของ GitHub หนึ่งในที่เก็บของของฉันที่ใช้ Git Large File Storage (LFS) ไปยัง AWS CodeCommit ฉันคิดว่าฉันจะแบ่งปันกระบวนการกับคุณในกรณีที่คุณกำลังมองหาวิธีการทำเช่นเดียวกัน นี่คือคู่มือแบบขั้นตอนตามประสบการณ์ของฉัน
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่มต้น ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งเครื่องมือต่อไปนี้:
- Git
- Git LFS
- AWS CLI
คู่มือแบบขั้นตอน
1. โคลนที่เก็บ
ก่อนอื่น ให้โคลนที่เก็บ GitHub ของคุณโดยใช้ตัวเลือก --mirror
ซึ่งจะสร้างโคลนแบบเบียร์ของที่เก็บ รวมถึงทุกสาขาและแท็กทั้งหมด
git clone --mirror https://github.com/tanshuai/designs.git designs
2. ตรวจสอบไฟล์ LFS
ถัดไป ให้รายการไฟล์ทั้งหมดที่จัดการโดย Git LFS เพื่อให้แน่ใจว่าทุกอย่างอยู่ในที่ของมัน
git lfs ls-files
คุณควรเห็นบางอย่างเช่นนี้:
cadfa0bc9e * Brochure-Trifold-Draft.ai
af9b8b8a1c * Brochure-Trifold-English.ai
27bb5f4e61 * Brochure-Trifold.ai
3. ย้ายไฟล์ LFS
ตอนนี้ ส่งออกไฟล์ LFS ขั้นตอนนี้ทำให้แน่ใจว่าพวกมันเป็นส่วนหนึ่งของประวัติศาสตร์ที่เก็บของคุณ
git lfs migrate export --include="*.ai" --everything
คุณจะเห็นข้อความความคืบหน้าบางอย่างเช่นนี้:
migrate: Sorting commits: ..., done.
migrate: Rewriting commits: 100% (20/20), done.
master 98a3c48d85... -> 82f8873b41...
migrate: Updating refs: ..., done.
migrate: checkout: ..., done.
prune: 3 local object(s), 0 retained, done.
cadfa0bc9e... (133 MB)
27bb5f4e61... (131 MB)
af9b8b8a1c... (130 MB), done.
prune: Deleting objects: 100% (3/3), done.
4. ทำความสะอาด LFS
ลบข้อมูลการติดตาม Git LFS และถอนการติดตั้ง Git LFS
git lfs ls-files
git rm .gitattributes -f
git lfs uninstall
5. ส่งไปที่ AWS CodeCommit
สุดท้าย ส่งที่เก็บของคุณไปยัง AWS CodeCommit
git push https://git-codecommit.us-east-2.amazonaws.com/v1/repos/designs --all
นั่นคือทั้งหมด! ด้วยการทำตามขั้นตอนเหล่านี้ ฉันสามารถย้ายที่เก็บ GitHub LFS ของฉันไปยัง AWS CodeCommit ได้สำเร็จ ไฟล์ขนาดใหญ่และประวัติที่เก็บยังคงถูกเก็บไว้อย่างสมบูรณ์แบบ
สรุป
การย้ายที่เก็บ GitHub ที่ใช้ Git LFS ไปยัง AWS CodeCommit ค่อนข้างตรงไปตรงมา หากคุณทำตามขั้นตอนที่ถูกต้อง หากคุณมีคำถามหรือประสบปัญหา เอกสาร AWS CodeCommit และ Git LFS เป็นแหล่งข้อมูลที่ดี
ฉันหวังว่าคุณจะพบคู่มือนี้มีประโยชน์ ขอให้เขียนโค้ดสนุก!