काफी बार, गिट और रेल जादू की तरह दिखता है ... जैसे कि रेल 3 ट्यूटोरियल पुस्तक के पहले अध्याय में , यह जीआईसी के बारे में बात करता है:
git remote add origin git@github.com:peter/first_app.git
git push origin master
और यह बहुत ज्यादा कहता है कि "यह सिर्फ काम करता है" बिना यह कहे कि वे क्या हैं और ब्रांचिंग के बारे में बात करना शुरू कर देते हैं। नेट शो पर खोज करना, git remote addजो "संक्षिप्त नाम" जोड़ना है, जैसे कि origin, और यह किसी भी नाम के साथ हो सकता है, जो URL के लिए उपनाम की तरह है। और originसामान्य रास्ता है जहाँ दूरस्थ रेपो इंगित करता है। ( http://git-scm.com/book/en/Git-Basics-Working-with-Remotes के तहत "रिमोट रिपोजिटरी जोड़ना")
तो URL क्यों है, git://git@github.com/peter/first_app.gitलेकिन दूसरे सिंटैक्स में नहीं है - यह क्या सिंटैक्स है? इसे क्यों समाप्त करना चाहिए .git? मैं .gitअंत में उपयोग नहीं करने की कोशिश की और यह भी काम करता है। यदि नहीं .git, तो और क्या हो सकता है? gitमें git@github.comGit सर्वर पर एक उपयोगकर्ता खाते हो रहा है?
इसके अलावा, इसका उपयोग करने के लिए इतनी क्रिया करने की आवश्यकता क्यों है git push origin master? क्या मूल और स्वामी डिफ़ॉल्ट नहीं हो सकते? मैंने पाया कि पहली बार, की origin masterजरूरत है, लेकिन एक छोटे से संपादन और प्रतिबद्ध के बाद, तो git pushयह सभी की जरूरत है (कोई ज़रूरत नहीं है origin master)। क्या जो कोई जानता है वह कुछ विवरण दे सकता है?
कभी-कभी यह स्पष्टीकरण के बिना बहुत सारे जादू की तरह लगता है ... और कभी-कभी इसका उपयोग करने वाला व्यक्ति इतना आत्मविश्वास होता है और जब पूछा जाता है कि, यह क्यों नहीं समझा सकता है, और "वह जिस तरह से है" जैसी किसी चीज के साथ प्रतिक्रिया करता है। कभी-कभी बहुत व्यावहारिक और व्यावहारिक। व्यावहारिक होना बुरा नहीं है, लेकिन शायद इस बात के लिए व्यावहारिक नहीं है कि क्या चल रहा है।
git@github.com:peter/first_app.gitहैscpGit में ssh यूआरएल के लिए शैली वाक्य रचना। एक अन्य बिंदु यह है कि डिफ़ॉल्ट रूप से, अपस्ट्रीम कॉन्फ़िगरेशन तब तकmasterव्यवहार को प्रभावित नहीं करता हैgit pushजब तक कि आपने (या बाद के संस्करणों में)push.defaultसेट नहीं किया है - मैंने भ्रम के इस स्रोत के बारे में एक ब्लॉग पोस्ट किया था: longair.net/blog/2011 / ०२ / २… /…trackingupstream