ما هو الغرض من فروع تتبع بوابة?
-
12-11-2019 - |
سؤال
أنا خلقت فرع تتبع ذلك whowasout.com تتبع whowasout.com/master
$ git remote -v
origin git@github.com:venkatd/whowentout.git (fetch)
origin git@github.com:venkatd/whowentout.git (push)
whowasout.com git@git01.phpfog.com:whowasout.com (fetch)
whowasout.com git@git01.phpfog.com:whowasout.com (push)
$ git branch -vv
master c33b5dc [origin/master] Merge branch 'whowasout.com'
* whowasout.com 7b6b240 [whowasout.com/master: ahead 1] print statement in test.
php
عندما أرتكب بعض التغييرات في whowasout.com فرع وتنفيذ "دفع بوابة" ، سيد يحصل دفعت إلى الأصل/سيد.هل هذا السلوك المتوقع?كنت أتوقع whowasout.com لدفع إلى whowasout.com/master.
لدفع التغييرات بلدي ، وأنا اكتب حاليا "دفع بوابة whowasout.com كوم: سيد" لكنني اعتقدت أن التتبع سيجعل هذه العملية أسرع.أنا على الطريق الصحيح?
المحلول
سيكون عليك القيام به:
git push whowasout.com whowasout.com:master
هذا لأن whowasout.com
ليس لديه فرع whowasout.com
وأنت لا تريد واحدة.ما تريده حقا هو الدفع whowasout.com فرع على المحلية لإتقان على whowasout.com عن بعد ، والتي يجب القيام به مثل أعلاه.
للحصول على السلوك الذي تريده بحيث فقط git push
يدفع من whowasout.com فرع على المحلية لإتقان على جهاز التحكم عن بعد ، لديك لتعيين push.default
التكوين إلى upstream
(يسمى سابقا tracking
)
git config push.default upstream
لاحظ أنه يجب عليك القيام بذلك لأنه ، بشكل افتراضي ، تكون فروع التتبع مفيدة في تتبع فرع المنبع عند إجراء الجلب / السحب.عند تغيير push.default
الإعداد ، فإنه يأتي في اللعب في دفع كذلك.خلاف ذلك ، ودفع يدفع فقط مطابقة الحكام ، أي whowasout.com سيتم دفع الفرع إلى whowasout.com فرع على جهاز التحكم عن بعد whowasout.com.