new - github موقع




استنساخ الريبو من جيثب لشخص آخر ودفعه إلى ريبو على جيثب (5)

لقد قمت باستنساخ الريبو على https://github.com/railstutorial/sample_app_rails_4 وأجرت الكثير من التغييرات عليه (كنت أستخدمه كنقطة بداية لتطبيقي الخاص) ، والآن أود دفع التطبيق الذي تم تغييره الريبو على حساب جيثب الخاص بي.

كيف يمكنني تغيير ما github repo مرتبط؟


حذف بوابة وإعادة التهيئة.

غرضك هو وضع هذا الريبو على يدك وجعله لك.

الفكرة هي حذف .git/ وإعادة التهيئة.

  1. انتقل إلى مجلد الريبو المستنسخ rm -rf .git
  2. أعد تهيئته ثم قم بإضافة جهاز التحكم عن بُعد وقم بإجراء الدفعة الأولى.
    git init
    git add .
    git commit -m "your commit message"
    git remote add origin 
    git push origin master
    

أعتقد أن "الطريقة الأكثر مهذبة" للقيام بذلك ستكون:

  1. شوكة الريبو الأصلي على حساب جيثب الخاص بك
  2. git checkout -b <your_branch_name> فرعًا جديدًا للاطلاع على تغييراتك - git checkout -b <your_branch_name> (في حالة عدم قيامك بذلك من قبل)
  3. إضافة وحدة تحكم عن بعد جديدة git remote add github <your_repository_ssh_url> المحلي: git remote add github <your_repository_ssh_url>
  4. ادفع فرعك الجديد الجميل إلى مستودع جيثب الخاص بك: git push github <your_branch_name>

وبهذه الطريقة سيكون لديك ريبو متشعب إلى الريبو الأصلي ، مع التغييرات التي قمت بها في فرع منفصل. ستكون هذه الطريقة أسهل في حالة رغبتك في إرسال طلب سحب إلى الريبو الأصلي.



يمكنك القيام بذلك عن طريق إنشاء جهاز تحكم عن بعد جديد من مستودعك المحلي (عبر سطر الأوامر).

git remote add <name> <url>

ثم يمكنك الاتصال:

git push <name> <repo_name>

لاستبدال جهاز التحكم عن بعد الافتراضي "الأصل" ، يمكنك تشغيل ما يلي:

git remote rm origin
git remote add origin <url>

كما يقول Deefour ، فإن موقفك لا يختلف كثيرًا عن الوضع في تغيير عنوان URL (URI) لمستودع Git البعيد . عندما تقوم clone مستودع ، تتم إضافته كجهاز remote عن remote لك ، تحت اسم origin . ما عليك القيام به الآن (نظرًا لأنك لم تعد تستخدم المصدر القديم) هو تغيير عنوان URL origin :

$ git remote set-url origin http://github.com/YOU/YOUR_REPO

إذا كان المستودع الأصلي سيتم تحديثه في كثير من الأحيان وتريد الحصول على هذه التحديثات من وقت لآخر ، فبدلاً من تحرير origin ، سيكون من الأفضل إضافة remote جديد:

$ git remote add personal http://github.com/YOU/YOUR_REPO

أو ربما حتى استدعاء القديم upstream :

$ git remote rename origin upstream
$ git remote add origin http://github.com/YOU/YOUR_REPO

ثم ، كلما أردت الحصول على تغييرات من upstream ، يمكنك القيام بما يلي:

$ git fetch upstream

نظرًا لأن هذا المصدر عبارة عن مستودع عينات (يبدو أنه نوع من القوالب للبدء) ، لا أعتقد أن هناك حاجة للاحتفاظ به أو تفرعه على الإطلاق - سأذهب مع البديل الأول هنا.





github