मान लीजिए कि मेरे पास एक ग्रेबल बिल्ड स्क्रिप्ट है और रिमोट गिट रिपोजिटरी क्लोन करने के लिए एक कार्य लिखना चाहता हूं। मैं उसको कैसे करू?ग्रेड: एक कार्य में एक गिट रेपो कैसे क्लोन करें?
उत्तर
क्लोनिंग Gradle-git plugin उपयोग किया जा सकता प्लगइन एक क्लोन विधि है। प्लगइन का उपयोग करने के लिए आप यह पहली बार डाउनलोड करना चाहिए:
import org.ajoberstar.gradle.git.tasks.*
task cloneGitRepo(type: GitClone) {
def destination = file("destination_folder")
uri = "your_git_repo_uri"
destinationPath = destination
bare = false
enabled = !destination.exists() //to clone only once
}
Gradle-git प्लगइन में GitClone task है जो मदद करनी चाहिए। मैं इसका उपयोग कैसे कर सकता हूं इस पर आपकी सहायता नहीं कर सकता क्योंकि मुझे ग्रैडल नहीं पता है।
हाँ, मैंने इसे पहले ही पाया है। आप देखते हैं, मैं ग्रैडल के लिए नौसिखिया हूं, इसलिए मुझे एक रेपो क्लोन करने के लिए प्लगइन का उपयोग करने के तरीके पर एक विस्तृत निर्देश की आवश्यकता है। वैसे भी आपके उत्तर को ऊपर उठाना होगा, धन्यवाद –
यहां एक गिट प्लगइन है - दस्तावेज़ यहां: Gradle-git। GitClone
शायद की तर्ज पर कुछ:
GitClone clone = new GitClone();
clone.setUri("http://remote.repository/");
clone.setDestinationPath("//local/path");
clone.setBare(false);
clone.cloneRepo();
ऊपर उल्लिखित Gradle-Git प्लगइन सीधा "क्लोन इस रेपो प्रदान करने से पर स्थानांतरित कर दिया लगता है:
buildscript {
repositories { mavenCentral() }
dependencies { classpath 'org.ajoberstar:gradle-git:0.2.3' }
}
फिर इस तरह का काम लिखना
इसके लिए धन्यवाद। मैं इसे किसी अन्य कार्य के अंदर कैसे बुलाऊंगा? – vsp
ऐसा करने का कार्य-तरीका तरीका * अन्य * कार्य पर निर्भर करेगा जो कि GitCloneTask प्रकार है। हालांकि, मुझे कोई कारण नहीं दिख रहा है कि आप GitCloneTask ऑब्जेक्ट क्यों नहीं बना सकते हैं और अगर आप चाहें तो SetUpRepo() को आमंत्रित करते हैं! गुणों को वांछित और आग के रूप में सेट करें: https://github.com/palominolabs/gradle-git-clone-task/blob/master/src/main/groovy/com/palominolabs/gradle/task/git/clone/GitCloneTask। groovy – mpierce
: उस निर्देशिका के लिए "कार्यक्षमता, तो मैं एक साधारण कार्य है कि सिर्फ इस करता है लिखा था(0.7.0 और ऊपर), आप इस तरह का कार्य बनायेंगे:
import org.ajoberstar.grgit.*
task clone << {
Grgit.clone(dir: file('build/repo'), uri: '[email protected]:user/repo.git')
}
रेपो की एक विशिष्ट विशेषता शाखा क्लोन करने का कोई तरीका है? –
कस्टम ग्रेडल प्लगइन में क्लोन ऑपरेशन का उपयोग कैसे करें? – sver
@ObaidMaroof, मदद करेगा चेकिंग ऑपरेशन के लिए हो सकता है [grgit.checkout (शाखा: 'मौजूदा शाखा')] (http://ajoberstar.org/grgit/docs/groovydoc/org/ajoberstar/grgit/operation/CheckoutOp .html)। – Abhijeet
रेपो की एक विशिष्ट फीचर शाखा क्लोन करने का कोई तरीका है? –
क्या यह उत्तर अभी भी सही है? ऐसा लगता है कि Gradle 2.7 गिट प्लग-इन की अब आवश्यकता नहीं है। क्या वो सही है? https://github.com/gradle/gradle/pull/386 – haysclark
क्लोन करने के लिए शाखा को आप कैसे निर्दिष्ट करते हैं? – revolutionary