दिलचस्प पोस्ट
स्ट्रिंग सी ++ में दो बार कन्वर्ट? मुझे `यह` सूचक का स्पष्ट उपयोग कब करना चाहिए? कस्टम कंपाइलर चेतावनी डेस्कटॉप और मोबाइल दृश्यों के लिए वस्तुओं को पुन: व्यवस्थित करने के लिए फ्लेक्स ऑर्डर की सुविधा का उपयोग करना सप्ताह के पहले दिन NSCalendar मेरी ऐप्स स्क्रिप्ट को एपीआई निष्पादन योग्य वापसी के रूप में क्यों तैनात किया गया है अनुमति अस्वीकृत है? मैं कैसे चेक कर सकता हूं कि जावास्क्रिप्ट के साथ एक रेडियो बटन चुना गया है? Laravel: त्रुटि : PostgreSQL में ड्राइवर को नहीं खोजा जा सका एचटीएमएल वीडियो प्लेयर ध्वनि बजाता है लेकिन वीडियो नहीं Regex एचटीएमएल टैग्स के बाहर टेक्स्ट को प्रतिस्थापित करता है चरित्र तारों की सरणी में विभाजित स्ट्रिंग फ़ोकस चोरी किए बिना एक फॉर्म दिखाएं? ASP.net में चल रहे एक वेब संदर्भ क्लाइंट से रॉ सॉप डेटा प्राप्त करना SimpleDateFormat महीने की अनदेखी जब पार्सिंग बीएफएस द्वारा प्राप्त वास्तविक पथ को मैं कैसे प्राप्त करूं?

जीआईटी में एक ही शाखा को क्लोन कैसे करें?

मेरे पास 'स्केलेटन' नामक एक स्थानीय जीआईटी रिपॉजिटरी है जो मैं परियोजना कंकालों को चलाने के लिए उपयोग करता हूं। विभिन्न प्रकार की परियोजनाओं के लिए इसकी कुछ शाखाएं हैं:

casey@agave [~/Projects/skeleton] git branch * master rails c c++ 

यदि मैं एक नई परियोजना के लिए मास्टर शाखा को देखना चाहता हूं, तो मैं कर सकता हूं

 casey@agave [~/Projects] git clone skeleton new Initialized empty Git repository in /Users/casey/Projects/new/.git/ 

और सब कुछ है कि मैं इसे कैसे चाहता हूं विशेष रूप से, नई मास्टर शाखा कंकाल मास्टर शाखा को इंगित करता है, और मैं बुनियादी प्रोजेक्ट सेटअप में परिवर्तनों को स्थानांतरित करने के लिए पुश और पुल कर सकता हूं।

क्या काम नहीं करता है, हालांकि, अगर मैं एक और शाखा क्लोन करना चाहता हूँ मुझे ऐसा नहीं मिल सकता है, इसलिए मैं सिर्फ शाखा को खींचता हूं, उदाहरण के लिए रेल शाखा, और फिर नए रेपो में 'मास्टर' शाखा होती है जो कंकाल रिपो के 'रेल' शाखा से खींचती है और खींचती है, डिफ़ॉल्ट रूप से।

क्या ऐसा करने के बारे में एक अच्छा तरीका है? या, शायद यह ऐसा तरीका नहीं है कि जीआईटी मुझे चीजों की संरचना करना चाहता है, और मैं निश्चित रूप से इसके लिए खुला हूं। शायद मेरे पास कई रेपो हों, साथ ही मास्टर स्केलेटन रेपो पर रेल स्केलेटन रेपो ट्रैकिंग होनी चाहिए? और रेल स्केलटन रिपो की क्लोनिंग करने वाली कोई भी व्यक्तिगत परियोजना।

किसी भी विचार और सुझावों की सराहना कर रहे हैं!

वेब के समाधान से एकत्रित समाधान "जीआईटी में एक ही शाखा को क्लोन कैसे करें?"

नोट: git1.7.10 (अप्रैल 2012) वास्तव में आप केवल एक शाखा क्लोन करने की अनुमति देता है:

 # clone only the remote primary HEAD (default: origin/master) git clone --single-branch as in: git clone <url> --branch <branch> --single-branch [<folder>] 

आप इसे t5500-fetch-pack.sh में देख सकते हैं:

 test_expect_success 'single branch clone' ' git clone --single-branch "file://$(pwd)/." singlebranch ' 

तोबू ने टिप्पणी की है कि:

उथले क्लोन करते समय यह निहित होता है
यह git clone --depth 1 बनाता है – git clone --depth 1 बैंडविड्थ को बचाने का सबसे आसान तरीका

और गिट 1.9.0 (फरवरी 2014) के बाद से, उथले क्लोन डेटा ट्रांसफर (पुश / पुल) का समर्थन करते हैं, इसलिए यह विकल्प अब और भी अधिक उपयोगी है।
" क्या git clone --depth 1 (उथले क्लोन) से ज्यादा उपयोगी है? "


"पूर्ववत करना" एक उथले क्लोन का विवरण " उथले क्लोन को पूर्ण क्लोन में परिवर्तित करें " (git 1.8.3+) पर विस्तृत किया गया है।

 # unshallow the current branch git fetch --unshallow # for getting back all the branches (see Peter Cordes' comment) git config remote.origin.fetch refs/heads/*:refs/remotes/origin/* git fetch --unshallow 

क्रिस टिप्पणी के रूप में:

लापता शाखाओं को रिवर्स – --single-branch लिए जादू की रेखा है (git v2.1.4):

 git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/* git fetch --unshallow 

एक तरह से निम्न निष्पादित करना है

 git clone user@git-server:project_name.git -b branch_name /your/folder 

जहां branch_name आपकी पसंद की शाखा है और "/ your / folder" उस शाखा के गंतव्य फ़ोल्डर है। यह सच है कि यह अन्य शाखाओं को आपको आगे और पीछे मर्ज करने का मौका देगा। अब, जीआईटी 1.7.10 के साथ शुरू, अब आप यह कर सकते हैं

 git clone user@git-server:project_name.git -b branch_name --single-branch /your/folder 

जीआईटी संस्करण 1.7.3.1 (विंडोज पर), यहां मैं क्या करता हूं ( $BRANCH का नाम है जिसे मैं चेकआउट करना चाहता हूं और $REMOTE_REPO रिमोट रिपॉजिटरी का यूआरएल है जिसे मैं क्लोन करना चाहता हूं):

 mkdir $BRANCH cd $BRANCH git init git remote add -t $BRANCH -f origin $REMOTE_REPO git checkout $BRANCH 

इस दृष्टिकोण का लाभ यह है कि बाद में git pull (या git fetch ) कॉल भी केवल अनुरोधित शाखा को डाउनलोड करेगा।

आप लंबे समय तक घुमावदार तरीके से कोशिश कर सकते हैं:

 mkdir newrepo.git cd newrepo.git git init git remote add origin file:///path/to/original git fetch origin branchiwant:refs/remotes/origin/branchiwant git checkout -b branchiwant --track origin/branchiwant 

यह क्या करता है:

  • रिक्त जीआईटी रिपॉजिटरी बनाएं और init बनाएँ
  • रिमोट फोन के रूप में मूल रिपॉजिटरी जोड़ता है
  • केवल शाखा जिसे आप रिमोट फोन से अपेक्षित हैं, प्राप्त करता है।
  • एक नया ब्रैच बनाता है और जांचता है जो उस स्रोत शाखा को ट्रैक करने के लिए सेटअप है जो आपने क्लोन किया था।

उम्मीद है कि ऐसा कुछ होगा जो आप के बाद हो।

git-clone man पृष्ठ से

--single-branch दौरान --single-branch आपका दोस्त है
--branch <branch name> साथ उपयोग करने के लिए याद रखें या केवल दूरस्थ प्राथमिक HEAD को क्लोन किया जाएगा (डिफ़ॉल्ट रूप से मास्टर)

ताज़ा स्रोत पढ़ने के लिए हमेशा CTRL + F5 करना याद रखें, कैश में से एक नहीं 🙂
(मैं लंबे समय तक इस विकल्प के बारे में नहीं जानता था)

आप निम्न आदेश का उपयोग कर इसे कर सकते हैं:

 git clone -b branch_name --single-branch project_url local_folder_to_clone_in 
 git clone <url> --branch <branch> --single-branch 

बस यूआरएल और शाखा नाम डालें

2 चरणों में किया जा सकता है

  1. भंडार क्लोन करें

    • git clone <http url>
  2. आप चाहते हैं शाखा चेकआउट

    • git checkout $BranchName

क्लोनिंग पूरा होने के बाद, मुझे सभी git submodule update --init --recursive डाउनलोड करने के लिए git submodule update --init --recursive प्रवेश करना पड़ा

सीएमडी खोलें
सीडी फ़ोल्डर_नाव (शाखा को क्लोन करने के लिए कहां दर्ज करें) बस एक कमांड

 git clone url_of_projecturltoclone -b branch_name 
  1. गिट बाश खोल खोलें
  2. अपने फ़ाइल सिस्टम में एक निर्देशिका बनाएं जहां आप चेकआउट करना चाहते हैं
    • $ एमकेडीआईआर फ़ीचर_डेबेल_ब्रंच
  3. Feature_develop_branch फ़ोल्डर में निर्देशिका बदलें।
    • $ सीडी फीचर_डेबेल_ब्रॅंच
  4. बाह्य क्लोन यूआरएल का उपयोग कर रिपॉजिटरी क्लोन करें
    • $ git क्लोन https: //someurl.repositoryName.git
  5. क्लोनिंग के बाद, डायरेक्टरी को बनाए गए रिपॉजिटरी में बदल दें।
    • $ cd / repositoryName
  6. शाखा की जांच करें
    • $ git चेकआउट

जीटी की क्लोनिंग शाखा के लिए आपके पास इस पर सार्वजनिक कुंजी नहीं है

 git clone -b <branch> <git repo url or clone url you get from git repo>