क्या ब्राउज़र को खोले बिना CLI से GitHub पर रिमोट रेपो बनाना संभव है?


348

मैंने एक नया स्थानीय गिट रिपॉजिटरी बनाया:

~$ mkdir projectname
~$ cd projectname
~$ git init
~$ touch file1
~$ git add file1
~$ git commit -m 'first commit'

क्या कोई नया रिमोट रेपो बनाने और GitHub के लिए अपनी प्रतिबद्धता को यहाँ से आगे बढ़ाने के लिए कोई git कमांड है? मुझे पता है कि नया ब्राउज़र बनाने के लिए सिर्फ एक ब्राउज़र और सिर पर आग लगाना कोई बड़ी बात नहीं है , लेकिन अगर सीएलआई से इसे प्राप्त करने का कोई तरीका है तो मुझे खुशी होगी।

मैंने लेखों की एक विशाल मात्रा को पढ़ा, लेकिन किसी ने भी यह नहीं पाया कि मैं git कमांड का उपयोग करके CLI से रिमोट रेपो कैसे बना सकता हूं। टिम लुकास का अच्छा लेख एक नया रिमोट गिट रिपॉजिटरी सेट करता है जो मैंने पाया सबसे निकटतम है, लेकिन गिटहब शेल एक्सेस प्रदान नहीं करता है

जवाबों:


215

आप GitHub API का उपयोग करके कमांड लाइन के माध्यम से एक GitHub रेपो बना सकते हैं। भंडार एपीआई की जाँच करें । यदि आप एक तिहाई तरीके से नीचे स्क्रॉल करते हैं, तो आपको "Create" शीर्षक वाला एक सेक्शन दिखाई देगा, जो बताता है कि API के माध्यम से रेपो कैसे बनाया जाए (इसके ठीक ऊपर एक सेक्शन है, जो बताता है कि कैसे API के साथ रेपो को फोर्क करना है, )। जाहिर है आप gitऐसा करने के लिए उपयोग नहीं कर सकते , लेकिन आप इसे कमांड लाइन के माध्यम से कर सकते हैं जैसे उपकरण curl

एपीआई के बाहर, कमांड लाइन के माध्यम से गिटहब पर रेपो बनाने का कोई तरीका नहीं है। जैसा कि आपने नोट किया, GitHub शेल एक्सेस आदि की अनुमति नहीं देता है, इसलिए GitHub API से हटकर, रेपो बनाने का एकमात्र तरीका GitHub के वेब इंटरफ़ेस के माध्यम से है।


73
एक गुच्छा mipadi धन्यवाद! GitHub API के बारे में पता नहीं था। एक ही समस्या के साथ हर किसी के लिए, यह मैं मूल रूप से क्या किया है: curl -F 'login=username' -F 'token=API Token' https://github.com/api/v2/yaml/repos/create -F name=reponame। आपका एपीआई टोकन GitHub साइट पर पाया जा सकता है, खाता सेटिंग्स पर क्लिक करें , प्रशासनिक सूचना और एपीआई टोकन (32 वर्ण स्ट्रिंग) देखें।
औरदोई 20

1
ऐसा लगता है कि यह पुराना है, कम से कम मुझे वहां एपीआई टोकन नहीं मिला है।
जोआचिम ब्रेइटनर

12
एपीआई वर्जन 3 सिंटैक्स नीचे दिए गए @bennedich stackoverflow.com/a/10325316/305633 के
जिम्नीक्रिकेट

2
@ चेकर: Git को रेपो बनाने के लिए इसकी आवश्यकता नहीं होती है, लेकिन GitHub पर एक सेट करने की आवश्यकता है। मुझे नहीं लगता कि मर्क्यूरियल आपको किसी भी गैर-योग्य रेपो पर धकेल कर रिमोट सर्वर पर रेपो बनाने की सुविधा देता है।
मियादी

5
@cseder: यह सवाल पूछ रहा है कि क्या GitHub API के माध्यम से GitHub पर रिमोट रेपो बनाना संभव है, न कि कैसे एक नया रेपो बनाने के लिए और GitHub पर मौजूदा किसी को पुश करें।
मिपाड़ी

321

जीएलआईबी एपीआई वी 3 के लिए सीएलआई कमांड (सभी सीएपीएस कीवर्ड बदलें):

curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO"}'
# Remember replace USER with your username and REPO with your repository/application name!
git remote add origin git@github.com:USER/REPO.git
git push origin master

43
पहली कमांड के साथ थोड़ी सी समस्या यह है कि आप अपने GitHub पासवर्ड को अपने में छोड़ रहे हैं ~/.bash_history। मैं इसके -u 'USER:PASS'साथ बदलने का सुझाव -u 'USER'दूंगा, फिर कर्ल आपसे अंतःक्रियात्मक रूप से पासवर्ड मांगेगा।
ivanzoid

20
रेपो को शुरू से निजी बनाने के लिए, उपयोग करें:curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO", "private":"true"}'
जो फ्लेचर

3
मैंने सभी टाइपिंग को बचाने के लिए एक बैश स्क्रिप्ट लिखी। उपयोगकर्ता इनपुट लेता है और समझदार चूक है: gist.github.com/robwierzbowski/5430952
RobW

3
यहाँ यह कैसे एक उपनाम के रूप में जोड़ने के लिए है:git config --global alias.gh-create '!sh -c "curl -u \"USERNAME\" https://api.github.com/user/repos -d \"{\\\"name\\\":\\\"$1\\\"}\"" -'
रॉबिन विंसलो

13
मत भूलो कि आप एक पहुंच टोकन उत्पन्न कर सकते हैं और इसे इस तरह से उपयोग कर सकते हैंcurl https://api.github.com/user/repos?access_token=myAccessToken -d '{"name":"REPO"}' :। :-)
Ionică Bizău

69

यह तीन आदेशों के साथ किया जा सकता है:

curl -u 'nyeates' https://api.github.com/user/repos -d '{"name":"projectname","description":"This project is a test"}'
git remote add origin git@github.com:nyeates/projectname.git
git push origin master

(v3 Github API के लिए अपडेट किया गया)


इन आदेशों की व्याख्या ...

गिथुब रेपो बनाएँ

    curl -u 'nyeates' https://api.github.com/user/repos -d '{"name":"projectname","description":"This project is a test"}'
  • कर्ल एक यूनिक्स कमांड है (ऊपर मैक पर भी काम करता है) जो यूआरएल के साथ पुनर्प्राप्त और इंटरैक्ट करता है। यह आमतौर पर पहले से ही स्थापित है।
  • "-यू" एक कर्ल पैरामीटर है जो सर्वर प्रमाणीकरण के लिए उपयोग करने के लिए उपयोगकर्ता नाम और पासवर्ड निर्दिष्ट करता है।
    • यदि आप उपयोगकर्ता को केवल नाम देते हैं (जैसा कि ऊपर उदाहरण में दिखाया गया है) तो कर्ल पासवर्ड के लिए संकेत देगा।
    • यदि आप पासवर्ड टाइप नहीं करना चाहते हैं, तो प्रमाणीकरण पर githubs एपी प्रलेखन देखें
  • "-d" एक कर्ल पैरामीटर है जो आपको अनुरोध के साथ POST डेटा भेजने की अनुमति देता है
  • "नाम" केवल आवश्यक POST डेटा है; मुझे "विवरण" भी शामिल करना पसंद है
  • मैंने पाया कि एकल उद्धरण के साथ सभी POST डेटा को उद्धृत करना अच्छा था ''

परिभाषित करें कि कहां धक्का देना है

git remote add origin git@github.com:nyeates/projectname.git
  • जीथब पर जुड़े (दूरस्थ) रेपो के स्थान और अस्तित्व के लिए परिभाषा जोड़ें
  • "मूल" एक डिफ़ॉल्ट नाम है जिसका उपयोग git के लिए किया जाता है जहां स्रोत से आया था
    • तकनीकी रूप से जीथब से नहीं आया था, लेकिन अब जीथब रेपो रिकॉर्ड का स्रोत होगा
  • "git@github.com: nyeates" एक ssh कनेक्शन है जो मानता है कि आपने पहले से ही एक विश्वसनीय ssh कीपर को github के साथ सेटअप किया है।

स्‍थानीय रेपो को गितुब में धकेलें

git push origin master
  • मास्टर स्थानीय शाखा से मूल रिमोट (github) को धक्का

54

यदि आप डिफंकट के उत्कृष्ट हब टूल को स्थापित करते हैं , तो यह उतना आसान हो जाता है

git create

लेखक के शब्दों में, " हब गिट के लिए एक कमांड-लाइन रैपर है जो आपको गिटहब में बेहतर बनाता है। "


3
मैं प्यार करता हूँ hub! इसके अलावा, उपयोगी है hub- या जैसा hubकि आमतौर पर उपनाम है git... git fork, जो pwdएक क्लोन रेपो के लिए रेपो का एक कांटा बनाता है जो आप में हैं ... याय।
एलेक्स ग्रे

2
यह उपकरण बहुत बढ़िया है! यह आपके लिए अपने प्रमाणीकरण टोकन को संग्रहीत करने का ध्यान रखता है ताकि आपको अपना पासवर्ड बार-बार टाइप न करना पड़े। इसके अलावा github के लिए ZSH प्लगइन चेकआउट करें।
डोरियन

19

सरल चरण ( git+ hub=> GitHub का उपयोग करके ):

  1. हब ( GitHub ) स्थापित करें ।

    • OS X: brew install hub
    • होने जाओ :go get github.com/github/hub
    • अन्यथा (होने जाओ के रूप में अच्छी तरह से):

      git clone https://github.com/github/hub.git && cd hub && ./script/build
      
  2. अपने रेपो पर जाएं या खाली एक बनाएं mkdir foo && cd foo && git init:।

  3. रन: hub createयह आपसे पहली बार GitHub क्रेडेंशियल के बारे में पूछेगा।

    उपयोग: hub create [-p] [-d DESCRIPTION] [-h HOMEPAGE] [NAME]

    उदाहरण: hub create -d Description -h example.com org_name/foo_repo

    हब पहली बार GitHub यूजरनेम और पासवर्ड के लिए प्रांप्ट करेगा और इसे एपीआई तक पहुंचने और OAuthटोकन के लिए इसे एक्सचेंज करने की आवश्यकता है , जो इसे बचाता है ~/.config/hub

    नए रिपॉजिटरी को स्पष्ट रूप से नाम देने के लिए NAME, वैकल्पिक ORGANIZATION/NAMEरूप से उस संगठन के तहत बनाएं, जिसके सदस्य आप हैं।

    साथ -p, एक निजी भंडार बनाते हैं, और साथ -dऔर -hभंडार का विवरण और मुखपृष्ठ सेट URL, क्रमशः।

    संकेत दिए जाने से बचने के लिए, उपयोग GITHUB_USERऔर GITHUB_PASSWORDपर्यावरण चर।

  4. फिर कमिट करें और हमेशा की तरह पुश करें hub commit/ चेक करें hub push

अधिक सहायता के लिए, चलाएँ hub help:।

यह भी देखें: GitHub पर कमांड लाइन का उपयोग करके एक Git रिपॉजिटरी का आयात करना


मैं GITHUB_USER और GITHUB_PASSWORD वातावरण चर कैसे सेट कर सकता हूं?
कास्पर

1
संभवतः आप उन्हें निर्यात कर सकते हैं, देखें: GH # 245
kenorb

1
मेरे लिए बहुत अच्छा काम किया, ध्यान दें "हब" MacPorts पर भी उपलब्ध है।
टिटक

मुझे लगता है कि यह वही है जिसकी मुझे तलाश थी! :)
T

11

एक आधिकारिक गीथूब मणि है , जो मुझे लगता है, यह करता है। मैं जितना सीखता हूं उससे अधिक जानकारी जोड़ने की कोशिश करूंगा, लेकिन मैं केवल अब इस रत्न की खोज कर रहा हूं, इसलिए मुझे अभी तक बहुत कुछ पता नहीं है।

अद्यतन: अपनी एपीआई कुंजी सेट करने के बाद, मैं createकमांड के माध्यम से जीथब पर एक नया रेपो बनाने में सक्षम हूं , हालांकि मैं create-from-localकमांड का उपयोग करने में सक्षम नहीं हूं , जो कि वर्तमान स्थानीय रेपो को लेने और जीथब पर संबंधित रिमोट बनाने के लिए सक्षम है।

$ gh create-from-local
=> error creating repository

अगर किसी को इस पर कुछ जानकारी है, तो मुझे यह जानना अच्छा लगेगा कि मैं क्या गलत कर रहा हूं। पहले से ही एक मुद्दा दायर है

अद्यतन: मुझे अंततः यह काम करने के लिए मिला। मुझे इस बात पर बिल्कुल यकीन नहीं है कि इस मुद्दे को फिर से कैसे पेश किया जाए, लेकिन मैंने सिर्फ स्क्रैच (.it फ़ोल्डर को हटा दिया) से शुरू किया था।

git init
git add .emacs
git commit -a -m "adding emacs"

अब यह लाइन रिमोट रेपो बनाएगी और यहां तक ​​कि इसे आगे बढ़ाएगी, लेकिन दुर्भाग्य से मुझे नहीं लगता कि मैं उस रेपो का नाम निर्दिष्ट कर सकता हूं जिसे मैं पसंद करूंगा। मैं चाहता था कि इसे जीथब पर "डॉटफाइल्स" कहा जाए, लेकिन जीएच रत्न ने वर्तमान फ़ोल्डर के नाम का उपयोग किया, जो कि मेरे होम फ़ोल्डर में होने के बाद से "जेसन" था। (मैंने वांछित व्यवहार के लिए एक टिकट जोड़ा )

gh create-from-local

दूसरी ओर, यह कमांड रिमोट रेपो का नाम निर्दिष्ट करने के लिए एक तर्क को स्वीकार करता है, लेकिन यह खरोंच से एक नया प्रोजेक्ट शुरू करने के लिए है, अर्थात जब आप इस कमांड को कॉल करते हैं, तो आपको एक नया रिमोट रेपो मिलता है जो एक स्थानीय रेपो पर नज़र रखता है। आपकी वर्तमान स्थिति के सापेक्ष एक नव-निर्मित सबफ़ोल्डर में, तर्क के रूप में निर्दिष्ट नाम के साथ दोनों।

gh create dotfiles

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

9

एक बैश शेल का उपयोग करके दूरस्थ रिपॉजिटरी बनाने के लिए जल्दी से

हर बार जब एक रिपॉजिटरी बनाई जानी है तो पूरा कोड टाइप करना बोझिल है

curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO"}' git remote add origin git@github.com:USER/REPO.git git push origin master

एक आसान तरीका है:

  1. एक निर्देशिका में शेल स्क्रिप्ट बनाएं अर्थात नामांकित / होम / USER_NAME / डेस्कटॉप / my_scripts githubscript.sh
  2. githubscript.shफ़ाइल के लिए निम्न कोड को संशोधित करें और सहेजें
#!bin/bash
curl -u 'YOUR_GITHUB_USER_NAME' https://api.github.com/user/repos -d "{\"name\":\"$1\"}";
git init;
git remote add origin git@github.com:YOUR_GITHUB_USER_NAME/$1.git;

नायब यहां $1वह है repository nameजोargumentscriptYOUR_GITHUB_USER_NAME स्क्रिप्ट को सहेजने से पहले परिवर्तन को लागू करते समय पारित किया जाता है

  1. scriptफ़ाइल के लिए आवश्यक अनुमतियाँ सेट करें chmod 755 githubscript.sh

  2. पर्यावरण कॉन्फ़िगरेशन फ़ाइल में स्क्रिप्ट निर्देशिका शामिल करें। nano ~/.profile; export PATH="$PATH:$HOME/Desktop/my_scripts"

  3. Githubscript.sh फ़ाइल को चलाने के लिए एक उपनाम भी सेट करें। nano ~/.bashrc; alias githubrepo="bash githubscript.sh"

  4. अब टर्मिनल में फ़ाइलें .bashrcऔर .profileफ़ाइलें पुनः लोड करें । source ~/.bashrc ~/.profile;

  5. अब एक नया भंडार बनाने के लिए demo: githubrepo demo;


1
अपने कोड में, मैं इस हिस्से बदल दिया है: git remote add origin git@github.com:YOUR_GITHUB_USER_NAME/$1.git; करने के लिए git remote add origin https://github.com/YOUR_GITHUB_USER_NAME/$1.git; उपयोगकर्ताओं को, जो SSH कुंजी का उपयोग नहीं करते हैं।
डमीआई

5

@ मेकैनिकल घोंघा द्वारा अन्य उत्तर के आधार पर, अजगर के उपयोग के बिना, जिसे मैंने बेतहाशा ओवरकिल पाया। इसे अपने में जोड़ें ~/.gitconfig:

[github]
    user = "your-name-here"
[alias]
    hub-new-repo = "!REPO=$(basename $PWD) GHUSER=$(git config --get github.user); curl -u $GHUSER https://api.github.com/user/repos -d {\\\"name\\\":\\\"$REPO\\\"} --fail; git remote add origin git@github.com:$GHUSER/$REPO.git; git push origin master"

मैं इस उपनाम से प्यार करता हूं। धन्यवाद फिर से, @Robru। पुनश्च अगर यह काम नहीं करता है, या एक ताजा ओएस स्थापित करने के बाद काम करना बंद कर देता है .. सुनिश्चित करें कि आपने कर्ल स्थापित किया है!
17:15 बजे daveloyall

5

नहीं, आपको एक बार usernameGitHub बनाने के लिए कम से कम एक ब्राउज़र खोलना होगा , एक बार निर्मित होने के बाद, आप कमांड लाइन से GitHub API का लाभ उठा सकते हैं, जो कमांड के नीचे है।

curl -u 'github-username' https://api.github.com/user/repos -d '{"name":"repo-name"}'

उदाहरण के लिए:

curl -u 'arpitaggarwal' https://api.github.com/user/repos -d '{"name":"command-line-repo"}'

1
फिर git remote add origin https://github.com/github-username/repo-name.gitअपने स्थानीय प्रोजेक्ट को गितुब से जोड़ने के लिए। उदाहरण के लिए, कमांड इस तरह दिखाई देगी:git remote add origin https://github.com/arpitaggarwal/command-line-repo.git
शेरलहोमन

4

दो-कारक प्रमाणीकरण वाले उपयोगकर्ताओं के लिए, आप बेनिदिच के समाधान का उपयोग कर सकते हैं, लेकिन आपको पहले कमांड के लिए X-Github-OTP हेडर को जोड़ना होगा। CODE को उस कोड से बदलें जो आपको दो-कारक प्रमाणीकरण प्रदाता से मिलता है। USER और REPO को रिपॉजिटरी के उपयोगकर्ता नाम और नाम से बदलें, जैसा कि आप उसके समाधान में करेंगे।

curl -u 'USER' -H "X-GitHub-OTP: CODE" -d '{"name":"REPO"}' https://api.github.com/user/repos
git remote add origin git@github.com:USER/REPO.git
git push origin master

3

मैंने GitHub और BitBucket के लिए REST APIs का उपयोग करके Gitter नामक इस के लिए एक निफ्टी स्क्रिप्ट लिखी :

https://github.com/dderiso/gitter

बिट बकेट:

gitter -c -r b -l javascript -n node_app

GitHub:

gitter -c -r g -l javascript -n node_app
  • -c = नया रेपो बनाएं
  • -r = रेपो प्रदाता (जी = गिटहब, बी = बिटबकेट)
  • -n = रेपो का नाम
  • -l = (वैकल्पिक) रेपो में एप्लिकेशन की भाषा सेट करें

3

मैंने ऐसा करने के लिए Git उर्फ ​​बनाया है, जो बेनेडिच के उत्तर पर आधारित है । निम्नलिखित को अपने में जोड़ें ~/.gitconfig:

[github]
    user = "your_github_username"
[alias]
    ; Creates a new Github repo under the account specified by github.user.
    ; The remote repo name is taken from the local repo's directory name.
    ; Note: Referring to the current directory works because Git executes "!" shell commands in the repo root directory.
    hub-new-repo = "!python3 -c 'from subprocess import *; import os; from os.path import *; user = check_output([\"git\", \"config\", \"--get\", \"github.user\"]).decode(\"utf8\").strip(); repo = splitext(basename(os.getcwd()))[0]; check_call([\"curl\", \"-u\", user, \"https://api.github.com/user/repos\", \"-d\", \"{{\\\"name\\\": \\\"{0}\\\"}}\".format(repo), \"--fail\"]); check_call([\"git\", \"remote\", \"add\", \"origin\", \"git@github.com:{0}/{1}.git\".format(user, repo)]); check_call([\"git\", \"push\", \"origin\", \"master\"])'"

इसका उपयोग करने के लिए, भागो

$ git hub-new-repo

स्थानीय रिपॉजिटरी के अंदर कहीं से भी, और संकेत दिए जाने पर अपना गिथब पासवर्ड दर्ज करें।


इसने मेरे लिए काम नहीं किया। यह 'ऐसी कोई फ़ाइल या निर्देशिका' नहीं लौटाता
adamwong246

यह मेरे लिए भी काम नहीं किया। यह लौटता हैcurl: (22) The requested URL returned error: 401 Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib64/python3.2/subprocess.py", line 488, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['curl', '-u', 'myusername', 'https://api.github.com/user/repos', '-d', '{"name": "reponame"}', '--fail']' returned non-zero exit status 22
Da Frenk

1
अजगर का उपयोग थोड़ा अधिक है और अतिरिक्त बैकस्लैश और अन्य दंड के रूप में बहुत अधिक शोर जोड़ता है। मैंने बस बैश के साथ एक संस्करण बनाया: stackoverflow.com/a/28924077/1423157
लूट

3

क्या आप की जरूरत है हब है । हब गिट के लिए एक कमांड-लाइन रैपर है। यह अन्य उपनामों का उपयोग करके देशी गिट के साथ एकीकृत करने के लिए बनाया गया है। यह नए रिपॉजिटरी बनाने सहित गिट में कार्रवाई करने की कोशिश करता है।

→  create a repo for a new project
$ git init
$ git add . && git commit -m "It begins."
$ git create -d "My new thing"
→  (creates a new project on GitHub with the name of current directory)
$ git push origin master


3

सभी पायथन 2.7 के लिए। * उपयोगकर्ता। Github API के आसपास एक Python आवरण है जो वर्तमान में संस्करण 3 पर है, जिसे GitPython कहा जाता है । बस का उपयोग easy_install PyGithubकर स्थापित करें या pip install PyGithub

from github import Github
g = Github(your-email-addr, your-passwd)
repo = g.get_user().user.create_repo("your-new-repos-name")

# Make use of Repository object (repo)

Repositoryवस्तु डॉक्स हैं यहाँ


2

टोकन बनाने के निर्देशों के लिए, यहां जाएं यह वह कमांड है जिसे आप टाइप करेंगे (इस उत्तर की तिथि के अनुसार। (सभी कैपिटल कीवर्ड्स को बदलें):

curl -u 'YOUR_USERNAME' -d '{"scopes":["repo"],"note":"YOUR_NOTE"}' https://api.github.com/authorizations

एक बार जब आप अपना पासवर्ड दर्ज करते हैं, तो आपको निम्नलिखित दिखाई देगा जिसमें आपका टोकन होगा।

{
  "app": {
    "name": "YOUR_NOTE (API)",
    "url": "http://developer.github.com/v3/oauth/#oauth-authorizations-api"
  },
  "note_url": null,
  "note": "YOUR_NOTE",
  "scopes": [
    "repo"
  ],
  "created_at": "2012-10-04T14:17:20Z",
  "token": "xxxxx",
  "updated_at": "2012-10-04T14:17:20Z",
  "id": xxxxx,
  "url": "https://api.github.com/authorizations/697577"
}

आप यहां जाकर कभी भी अपना टोकन रद्द कर सकते हैं


2

प्रतिनिधि कारणों से, मैं इसे एक टिप्पणी के रूप में नहीं जोड़ सकता (जहां यह बेनिदिच के उत्तर के साथ बेहतर होगा ), लेकिन विंडोज कमांड लाइन के लिए, यहां सही वाक्यविन्यास है:

कर्ल-यू Your_USERNAME https://api.github.com/user/repos -d "{\" name \ ": \" your_REPO_NAME \ "}"

यह एक ही मूल रूप है, लेकिन आपको एकल के बजाय दोहरे उद्धरण (") का उपयोग करना होगा, और बैकस्लैश के साथ POST मापदंडों (-d ध्वज के बाद) में भेजे गए दोहरे उद्धरणों से बचना होगा। मैंने अपने उपयोगकर्ता नाम के आसपास के एकल उद्धरणों को भी हटा दिया। लेकिन अगर आपके उपयोगकर्ता नाम में जगह थी (संभव है?) तो शायद दोहरे उद्धरण चिह्नों की आवश्यकता होगी।


विंडोज उपयोगकर्ताओं के लिए अच्छा है। नहीं, उपयोगकर्ता नामों में स्थान नहीं हो सकते ( github.com पर साइन-अप फ़ॉर्म में कहा गया है: "उपयोगकर्ता नाम में केवल अल्फ़ान्यूमेरिक वर्ण या एकल हाइफ़न हो सकते हैं, और एक हाइफ़न के साथ शुरू या समाप्त नहीं हो सकता है")। इस प्रकार, उपयोगकर्ता नाम की कोई दोहरे-उद्धरण की आवश्यकता नहीं है।
mklement0

Github पॉवर शेल स्वीकार नहीं करता है-कर्ल के साथ, विंडोज पर :(
JuliandotNut

2

डिस्कलेमर: मैं ओपन सोर्स प्रोजेक्ट का लेखक हूं

यह कार्यक्षमता इसके द्वारा समर्थित है: https://github.com/chrissound/Human-Friendly-Commands अनिवार्य रूप से यह लिपि है:

#!/usr/bin/env bash

# Create a repo named by the current directory
# Accepts 1 STRING parameter for the repo description
# Depends on bin: jq
# Depends on env: GITHUB_USER, GITHUB_API_TOKEN
github_createRepo() {
  projName="$(basename "$PWD")"
  json=$(jq -n \
    --arg name "$projName" \
    --arg description "$1" \
    '{"name":$name, "description":$description}')

  curl -u "$GITHUB_USER":"$GITHUB_API_TOKEN" https://api.github.com/user/repos -d "$json"
  git init
  git remote add origin git@github.com:"$GITHUB_USER"/"$projName".git
  git push origin master
};

यह वास्तव में GitHub का उपयोग करने का नया तरीका है Personal Access Token। ( ?access_token=${ACCESSTOKEN}अब बिना किसी काम के इसे जोड़ने का पुराना तरीका ।
not2qubit

0

यह समाधान मिला जो मुझे पसंद आया: https://medium.com/@jakehasler/how-to-create-a-remote-git-repo-from-the-command-line-2d6857f49564

आपको सबसे पहले एक बनाने की जरूरत है जीथब पर्सनल एक्सेस टोकन

अपने पसंदीदा टेक्स्ट एडिटर में अपना ~ / .bash_profile या ~ / .bashrc खोलें। अपनी फ़ाइल के शीर्ष के पास निम्नलिखित पंक्ति जोड़ें, जहाँ बाकी निर्यात संस्करण एड हैं:

export GITHUB_API_TOKEN=<your-token-here>

नीचे, अपने अन्य बैश कार्यों के द्वारा, आप निम्नलिखित के समान कुछ पेस्ट कर सकते हैं:

function new-git() {
    curl -X POST https://api.github.com/user/repos -u <your-username>:$GITHUB_API_TOKEN -d '{"name":"'$1'"}'
}

अब, जब भी आप एक नई परियोजना बना रहे हैं, तो आप $ new-git awesome-repoअपने Github उपयोगकर्ता खाते पर एक नया सार्वजनिक रिमोट रिपॉजिटरी बनाने के लिए कमांड चला सकते हैं ।


0

Github की आधिकारिक नई कमांड लाइन इंटरफ़ेस के साथ :

gh repo create

अतिरिक्त विवरण और विकल्प और स्थापना निर्देश देखें


उदाहरण के लिए, अपने git वर्कफ़्लो को पूरा करने के लिए:

mkdir project
cd project
git init
touch file
git add file
git commit -m 'Initial commit'
gh repo create
git push -u origin master

-2

यहाँ मेरे प्रारंभिक गिट कमांड हैं (संभवतः, यह कार्रवाई होती है C:/Documents and Settings/your_username/):

mkdir ~/Hello-World
# Creates a directory for your project called "Hello-World" in your user directory
cd ~/Hello-World
# Changes the current working directory to your newly created directory
touch blabla.html
# create a file, named blabla.html
git init
# Sets up the necessary Git files
git add blabla.html
# Stages your blabla.html file, adding it to the list of files to be committed
git commit -m 'first committttt'
# Commits your files, adding the message 
git remote add origin https://github.com/username/Hello-World.git
# Creates a remote named "origin" pointing at your GitHub repository
git push -u origin master
# Sends your commits in the "master" branch to GitHub

1
हैलो-वर्ल्ड रेपो इस मामले में गिटहब पर उपलब्ध होना चाहिए, सवाल में समस्या को संबोधित नहीं करता है।
जुलियनडॉटनट

-2

मुझे हाल ही में create-github-repo के बारे में पता चला । रीडमी से:

इंस्टॉल:

$ npm i -g create-github-repo

उपयोग:

$ export CREATE_GITHUB_REPO_TOKEN=<access_token>
$ create-github-repo --name "My coolest repo yet!"

या:

$ create-github-repo <access_token> --name "My coolest repo yet!"

-7

कमांड लाइन पर एक नया रिपॉजिटरी बनाएं

echo "# <RepositoryName>" >> README.md

git init

git add README.md

git commit -m "first commit"

git remote add origin https://github.com/**<gituserID>/<RepositoryName>**.git

git push -u origin master

कमांड लाइन से मौजूदा रिपॉजिटरी को पुश करें

git remote add origin https://github.com/**<gituserID>/<RepositoryName>**.git

git push -u origin master

1
यह काम नहीं करता; यह दूरस्थ रिपॉजिटरी नहीं बनाता है।
मैथ्यू पढ़ें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.