ترحيل مستودع 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 هما موارد رائعة.
آمل أن تجد هذا الدليل مفيدًا. برمجة سعيدة!