Kā automatizēt projektu un Github repo iestatīšanu no komandrindas

Šis ieraksts nāk no kairinājuma, ar kuru es personīgi saskāros, kad es pirmo reizi iemācījos kodēt - izveidoju savu vietējo repo un sinhronizēju ar Github.

Es iemācījos, veicot projektus (bieži vien freeCodeCamp!). Bet man bija jāpārliecinās, ka es nezaudēju savu smago darbu un ka citi varētu redzēt to smago darbu, kuru es ieguldīju, tāpēc katram projektam bija jānotiek Github. Jo pilnīgāki projekti man bija saistībā ar Github, jo vieglāk tas bija vervētājiem. Bet darbības, kas vajadzīgas, lai izveidotu projektu, inicializētu repo un sinhronizētu ar Github, bija patiešām kaitinošas un atkārtotas, tāpēc es nolēmu problēmu atrisināt.  

Sliktas ziņas: šī nebūs liela, iedomāta, detalizēta un tehniski seksīga ziņa. Tas būs ļoti ne-seksīgs.

Labas ziņas: lai to izdarītu, jums nav jābūt čaulas skriptu dievam (dess).

Tāpēc mana tipiskā projekta iestatīšanas darba plūsma parasti notiek šādi:

1) Dodieties uz manu   ../projectsmapi un palaidiet, mkdir project-of-some-namelai izveidotu mapi ar nosaukumu project-of-some-name.

2) cdšajā projekta mapē un veiciet, git initlai tajā inicializētu vietējo git repo.

3) palaidiet, touch README.MDlai izveidotu READMEfailu, atveriet to un pievienojiet dažus pamata aprakstus, tostarp saites uz resursiem / apmācībām, kuras es īstenoju šajā projektā. Saglabājiet failu.

4) palaist git add .un pēc tamgit commit -m ' ...some initial commit message...

5) atveriet pārlūkprogrammu, dodieties uz Github, piesakieties, izveidojiet jaunu (attālo) krātuvi, kopējiet url, atgriezieties savā terminālā, pārliecinieties, ka esmu pareizajā projekta mapē project-of-some-name... pēc tam palaidiet iestatīšanai nepieciešamos git skriptus attālo repo kā “augšpus” esošo repo un pievienojiet tam manu vietējo repo. Tad, visbeidzot, es varu palaist a, git pushun mana vietējā apņemšanās tiktu virzīta uz augšu

6) apgulties un pasnaust, izsmelts no šī atkārtotā procesa.

Jāatzīst, ka tas bija mans process, taču man patika uzturēties organizētam un vienmēr piekļūt saviem projektiem, lai es varētu uz tiem atsaukties.

Tā kā automatizācija ir lielisks veids, kā praktizēt savas kodēšanas prasmes, es nolēmu uzrakstīt nelielu čaulas skriptu, kas automatizē šīs briesmīgās un atkārtotās darbības. Skripts atrodas šī ieraksta beigās, un esiet brīdināts - tas nav izsmalcināts vai izdomāts. Bet tas noteikti padara darbu pabeigtu, un man nav jāpiesakās Github un visi šie soļi jākļūst!

Pirms skripta kopēšanas jums jāzina, kā to palaist Mac datorā. Tālāk ir norādītas darbības, kas jums jāievieš, lai varētu izmantot skriptu, lai automatizētu iestatīšanas darbplūsmu.

1) Es glabāju skriptus saknes / mājas mapē apakšmapē ar nosaukumu scripts. Es iesaku jums rīkoties tāpat vai līdzīgi. Lai nokļūtu saknes / mājas mapē, ievadiet termināla veidu, cd ~jo tilda ( ~) ir mājas mapes simbols. Jūsu Mac Finder lietotnē tas tiek parādīts kā tas ar mājas ikonu. Tātad visi mani skripti ir saglabāti~/scripts

2) Tas ir svarīgi, jo, lai palaistu čaulas skriptu no jebkura direktorija terminālā, jums ir jāievada pilns ceļš. Manā gadījumā man ir jāizraksta, ~/scripts/git-script.shlai palaistu skriptu. Bet mēs tiekam priekšā sev.

3) nokopējiet koda fragmentu šīs ziņas apakšdaļā un pēc tam atveriet teksta redaktoru, ielīmējiet to un pēc tam saglabājiet to kā [filename].sh. Šis .shir čaulas skriptu paplašinājums. Saglabājiet failu direktorijā, kurā vēlaties to saglabāt - atkal es iesaku ~/scriptskā mapi skriptu saglabāšanai.

4) Pārejiet uz šo mapi savā terminālā. Lai būtu drošs, palaidiet lsterminālu, lai pārbaudītu, vai skripts ir tur. Ja tā nav, jūs atrodaties nepareizajā mapē vai 3. darbība nav veiksmīgi pabeigta.

5) Padarīt čaulas skriptu izpildāmu. Lai to izdarītu, rakstot sekojošo terminālā: chmod +x <>. Tas ir unix veids, kā padarīt čaulas skriptu "izpildāmu". Es neesmu pārliecināts, ka es pilnībā saprotu, ko tas nozīmē, izņemot to, kas nepieciešams, lai jebkurš jūsu rakstītais čaulas skripts būtu izpildāms, tāpēc nejautājiet man, un es jums nemelošu.

6) dodieties uz savu projektu mapi un izveidojiet jaunu mapi, kurā plānojat ievietot savu projektu. Efektīvi jums tas jādara:   mkdir- izveidojiet project-of-some-namemapes iekšpusi, kurā glabājat visus savus projektus. Tātad jūsu projekts galu galā tiks ievietots iekšā my-computer/my-projects/project-of-some-name. cdšajā mapē un pēc tam ierakstiet, pwdlai iegūtu pilnu ceļu. Kopējiet to - jums tas drīz būs jāielīmē. Tā vajadzētu izskatītiesmy-computer/my-projects/project-of-some-name

7) vēlreiz atveriet termināli un pēc tam ierakstiet . Skripts darbojas! Jūs vadīs caur kādu ievadi ... Galvenie soļi ir:~/scripts/<>

    > kā jūs vēlaties saukt savu Github repo ( neizmantojiet atstarpes - "mans-lieliskais-projekts" ir labs. Nelietojiet "mans lieliskais projekts" kā repo nosaukums.

  > Ievadiet aprakstu, kas redzams Github repo aprakstā. Šim nolūkam ir droši izmantot atstarpes.

 > Ievadiet projekta ceļu, kuru saņēmāt 6. darbībā, to, kuru saņemat pēc tam, kad esat ievadījis pwdtermināli un saņēmis kaut ko līdzīgumy-computer/my-projects/project-of-some-name

 > ievadiet savu Github lietotājvārdu (nevis e-pasta adresi) un pēc tam savu Github paroli. Esiet piesardzīgs, rakstot, jo šīs vērtības netiek rādītas ekrānā.

 > .... tas tā. Skripts lokāli iestatīs jūsu git repo iekšpusē my-computer/my-projects/project-of-some-nameun pēc tam izveidos README.MD(tukšu) un pēc tam to izdarīs lokāli, pēc tam Github izveidos attālo repo (piesakieties, izmantojot API) utt., Un pēc tam visu uz augšu!

 > visbeidzot, jūs redzēsiet, ka terminālis, ar kuru jūs mijiedarbojāties, pašlaik aktīvo direktoriju ir nomainījis uz jūsu projekta mapi. Tagad tas būs plkst., my-computer/my-projects/project-of-some-nameUn jūs varat ierakstīt lsun skatīt README.MDfailu. Pēc tam, kad ierakstīsit git status, redzēsit vietējā repo statusu (jūsu vietējā projekta stāvokli), un, ja to ierakstīsit, git remotetiks parādīts jūsu projekta Github URL!

Gatavs! Priecīgu kodēšanu!

Annnd ..... beidzot ...... šeit ir scenārijs! Es komentēju katru soli, lai jūs varētu pamatot savu ceļu.

# Make executable with chmod +x <> CURRENTDIR=${pwd} # step 1: name of the remote repo. Enter a SINGLE WORD ..or...separate with hyphens echo "What name do you want to give your remote repo?" read REPO_NAME echo "Enter a repo description: " read DESCRIPTION # step 2: the local project folder path echo "what is the absolute path to your local project directory?" read PROJECT_PATH echo "What is your github username?" read USERNAME # step 3 : go to path cd "$PROJECT_PATH" # step 4: initialise the repo locally, create blank README, add and commit git init touch README.MD git add README.MD git commit -m 'initial commit -setup with .sh script' # step 5 use github API to log the user in curl -u ${USERNAME} //api.github.com/user/repos -d "{\"name\": \"${REPO_NAME}\", \"description\": \"${DESCRIPTION}\"}" # step 6 add the remote github repo to local repo and push git remote add origin //github.com/${USERNAME}/${REPO_NAME}.git git push --set-upstream origin master # step 7 change to your project's root directory. cd "$PROJECT_PATH" echo "Done. Go to //github.com/$USERNAME/$REPO_NAME to see." echo " *** You're now in your project root. ***"

PostScript f reeCodeCamp studentiem

Es tiešām, patiesi ticu, ka jūsu visdārgākie resursi ir jūsu laiks, pūles un nauda. No tiem vissvarīgākais resurss ir laiks, jo pārējos divus var atjaunot un atgūt. Tātad, ja jūs gatavojaties pavadīt laiku kaut kam, pārliecinieties, ka tas jūs tuvina šim mērķim.

Paturot to prātā, ja vēlaties ieguldīt 3 stundas kopā ar mani, lai atrastu savu īsāko ceļu uz koda apguvi (it īpaši, ja esat karjeras mainītājs, piemēram, es ...), tad dodieties uz manu kursu vietni un izmantojiet veidlapu tur pierakstieties (nevis uznirstošo logu!). Ja ziņai pievienosiet vārdus “FREE MY TIME”, es zināšu, ka jūs esat freeCodeCamp lasītājs, un es jums nosūtīšu reklāmas kodu, jo tāpat kā jūs, freeCodeCamp deva man stabilu sākumu.

Arī tad, ja vēlaties uzzināt vairāk, apskatiet freeCodeCamp podcast 53. epizodi, kur mēs ar Quincy (FreeCodeCamp dibinātājs) dalāmies pieredzē kā karjeras izmaiņas, kas var jums palīdzēt jūsu ceļojumā. Podcast apraidei var piekļūt arī iTunes, Stitcher un Spotify.

Ar mani var sazināties Twitter vietnē: @ZubinPratap