Denne opplรฆringen er en rask guide til installering og bruk av GitHub. Slik oppretter du et lokalt depot, hvordan du kobler dette lokale depotet til det eksterne Github-depotet (hvor alle kan se det), hvordan du kan foreta endringer, og til slutt hvordan du skyver alt lokalt depotinnhold pรฅ GitHub, blant andre vanlige oppgaver. .
Fรธr du starter, er det viktig รฅ merke seg at denne opplรฆringen forutsetter en grunnleggende forstรฅelse av begrepene som brukes i Git: push, pull, commit, repository, etc. Det krever ogsรฅ forhรฅndsregistrering kl GitHub.
Installasjon av Github
Pรฅ Debian / Ubuntu og derivater:
sudo apt-get install git
En Fedora og derivater:
sudo yum installer git
En Arch og derivater:
sudo pacman -S git
Github fรธrste oppsett
Nรฅr installasjonen er fullfรธrt, er neste trinn รฅ konfigurere GitHub-brukerkonfigurasjonsdetaljene. For รฅ gjรธre dette, bruk fรธlgende kommandoer, og erstatt "brukernavn" med GitHub-brukernavnet ditt og "email_id" med e-postadressen som ble brukt til รฅ opprette GitHub-kontoen.
git config - global bruker.navn "brukernavn" git config - global user.email "email_id"
Opprett et lokalt depot
Det fรธrste er รฅ lage en mappe pรฅ datamaskinen din, som vil fungere som et lokalt lager. For รฅ gjรธre dette, bare kjรธr fรธlgende kommando:
git init Mytest
Denne kommandoen oppretter MyTest-mappen. I sin tur gjรธr .init-undermappen MyTest anerkjent som et lokalt Git-depot.
Hvis depotet er opprettet, vises en linje som ligner pรฅ fรธlgende:
Initialisert tomt Git-arkiv i /home/tu_usuario/Mytest/.git/
Deretter mรฅ du gรฅ til MyTest-mappen:
cd Mytest
Lag en README-fil for รฅ beskrive depotet
README-filen brukes vanligvis til รฅ beskrive hva depotet inneholder eller hva prosjektet handler om. For รฅ lage en, er det bare รฅ lรธpe:
gedit README
Nรฅr du har angitt depotbeskrivelsen, ikke glem รฅ lagre endringene.
Legge til depotfilene i en indeks
Dette er et viktig skritt. Fรธr du kan laste opp endringene til Github eller en annen Git-kompatibel server, mรฅ du indeksere alle filene i det lokale depotet. Denne indeksen inneholder de nye filene, samt endringer i eksisterende filer i det lokale arkivet.
I vรฅrt tilfelle inneholder vรฅrt lokale depot allerede en ny fil: README. Derfor skal vi lage en annen fil med et enkelt C-program og som vi vil kalle eksempel.c. Innholdet vil vรฆre:
#include int main () {printf ("hallo verden"); retur 0; }
Sรฅ nรฅ har vi to filer i vรฅrt lokale arkiv: README og example.c.
Neste trinn er รฅ legge til disse filene i indeksen:
git add README git add smaple. c
Kommandoen "git add" kan brukes til รฅ legge til et hvilket som helst antall filer og mapper i indeksen. For รฅ legge til alle endringene, uten รฅ spesifisere navnet pรฅ filene, er det mulig รฅ utfรธre "git add." (med en periode pรฅ slutten).
Lagre endringer som er gjort i indeksen
Nรฅr alle filene er lagt til, er det mulig รฅ legge igjen en oversikt over disse endringene ved รฅ gjรธre det i sjargongen som kalles en "commit". Dette betyr at รฅ legge til eller endre filer er fullfรธrt, og endringene kan lastes opp til det eksterne Github-depotet. For รฅ gjรธre dette mรฅ du utfรธre fรธlgende kommando:
git commit -m "melding"
"Melding" kan vรฆre en hvilken som helst melding som kort beskriver de aktuelle endringene, for eksempel: "Jeg har lagt til en slik funksjonalitet" eller "Jeg har korrigert en slik ting", og sรฅ videre.
Opprett et lager pรฅ GitHub
Datalagernavnet mรฅ vรฆre det samme som depotet pรฅ det lokale systemet. I dette tilfellet vil det vรฆre "MyTest". For รฅ gjรธre dette mรฅ du fรธrst og fremst logge deg pรฅ Github. Klikk deretter pรฅ plusstegnet (+) รธverst til hรธyre pรฅ siden og velg alternativet "opprett nytt lager". Til slutt mรฅ du fylle ut dataene og klikke pรฅ knappen "Opprett lager".
Nรฅr dette er gjort, vil lageret opprettes, og det vil vรฆre mulig รฅ laste opp innholdet i det lokale depotet til GitHub-depotet. For รฅ koble til det eksterne depotet pรฅ GitHub mรฅ du kjรธre kommandoen:
git remote legg til opprinnelse https://github.com/user_name/Mytest.git
Push filer fra lokalt depot til GitHub repository
Det siste trinnet er รฅ skyve innholdet i det lokale depotet til det eksterne depotet ved hjelp av kommandoen:
git push origin master
Det gjenstรฅr bare รฅ legge inn pรฅloggingsinformasjonen (brukernavn og passord).
Dette vil laste opp alt innholdet i MyTest-mappen (lokalt depot) til GitHub (eksternt arkiv). For pรฅfรธlgende prosjekter trenger du ikke lenger รฅ fรธlge disse trinnene fra bunnen av. I stedet kan du starte fra trinn 3 direkte. Til slutt, ikke glem at endringene vil vรฆre tilgjengelige fra Github-nettstedet.
Opprette en gren
Nรฅr utviklere รธnsker รฅ fikse feil eller legge til nye funksjoner, lager de ofte en filial eller kopi av koden slik at de kan forplikte seg separat, uten รฅ pรฅvirke det opprinnelige prosjektet. Sรฅ nรฅr de er ferdige, kan de slรฅ sammen denne grenen tilbake til hovedgrenen (master).
For รฅ opprette en ny gren er det to alternativer:
Langt alternativ:
git branch mirama # opprett en ny gren som heter mirama git checkout mirama - bytt til bruk av mirama-grenen.
Kort alternativ:
git checkout -b mirama - opprett og bytt til bruk av mirama-grenen
Nรฅr endringene er gjort, legg dem til i grenindeksen og foreta tilsvarende forpliktelse:
git add. git commit -m "endringer i mirama"
Deretter mรฅ du gรฅ tilbake til hovedgrenen og ta endringene som er gjort i mirama:
git kassa master git merge mirama
Til slutt mรฅ du slette mirama (siden endringene ble innlemmet i master):
git gren -d mirama
Og last opp master til Github:
git push origin master
Opprette et avledet Git-depot (gaffel)
Takket vรฆre Git og eksistensen av store offentlige arkivbiblioteker, som Github, er det oftest ikke nรธdvendig รฅ begynne รฅ programmere prosjektet vรฅrt fra bunnen av. I slike tilfeller er det mulig รฅ ta denne grunnkoden for รฅ lage et nytt prosjekt.
For รฅ gjรธre dette er den fรธrste tingen รฅ gjรธre en gaffel i et eksisterende depot, det vil si et prosjekt avledet fra det som tar koden til det opprinnelige prosjektet som base. Pรฅ Github oppnรฅs dette ved รฅ klikke pรฅ den tilsvarende knappen, som vist pรฅ skjermbildet nedenfor.
Sรฅ, hva vi mรฅ gjรธre er รฅ klone depotet til dette nye prosjektet pรฅ datamaskinen vรฅr. Som et eksempel kan vi bruke Ankifox-depotet mitt, en utvidelse for Firefox som gjรธr det mulig รฅ legge ord til Anki, som er tilgjengelig pรฅ Github:
git-klone https://github.com/usemoslinux/Ankifox.git
Ikke glem รฅ erstatte https://github.com/usemoslinux/Ankifox.git med URL-en som tilsvarer prosjektet ditt. ร fรฅ denne adressen er veldig enkelt, som vist pรฅ bildet nedenfor.
Denne kommandoen vil opprette en katalog kalt ยซAnkifoxยป, den vil initialisere .git-katalogen i den, og den vil laste ned alle dataene fra datalageret, for รฅ jobbe med den nyeste versjonen.
Bare noe sรฅnt jeg lette etter, en enkel og praktisk guide som vil forklare alt trinn for trinn.
For bibucket antar jeg at det ville vรฆre nesten de samme trinnene, ikke sant?
Nรธyaktig. Det er veldig likt. Bare endre URL-adressen til den eksterne verten.
Det interessante med Bitbucket er at det gir muligheten til รฅ opprette private depoter (det vil si at det ikke er รฅpent for allmennheten, men bare er tilgjengelig for en bestemt gruppe mennesker). Pรฅ Github er dette ogsรฅ mulig, men du mรฅ betale. Pรฅ den annen side, i Bitbucket nr.
Jubel! Paul.
Store venner !!! Av de beste stedene i inter for รฅ finne ut og lรฆre,
Hvis du er interessert i emnet, anbefaler jeg at du tar en titt pรฅ en veiledning som et fellesskapsmedlem gjorde om hvordan du bruker Git + Google Code, som ogsรฅ er veldig interessant og praktisk:
https://blog.desdelinux.net/iniciando-un-proyecto-con-git-y-google-code-parte-i/
https://blog.desdelinux.net/iniciando-un-proyecto-con-git-y-google-code-parte-ii/
https://blog.desdelinux.net/iniciando-un-proyecto-con-git-y-google-code-parte-iii/
https://blog.desdelinux.net/iniciando-un-proyecto-con-git-y-google-code-parte-iv/
Jubel! Paul.
Takket vรฆre deg liker jeg Bitbucket mer .. uansett god artikkel ๐
@usemoslinux Kan du opprette "GitHub" for automatisk รฅ installere FreeBSD-systemet?, vil det nesten automatiske installasjonsprogrammet vรฆre nyttig som Arch gjรธr, interessant innlegg.
PS: en GitHub-guide for FreeBSD ville vรฆre hyggelig.
Takk for guiden. Jeg fรธlger den, og jeg hadde et lite problem, det lar meg ikke laste opp det lokale depotet til det eksterne. Det gir meg fรธlgende feil:
[root @ iou Mytest] #git push origin master
feil: Den forespurte URL-en returnerte feil: 403 Forbudt under tilgang https://github.com/miusuario/Mytest.git/info/refs
Noen ideer?
Muligens det som skjer er at URL-en til det eksterne depotet du skriver inn ikke er riktig. Dette kan skyldes en skrivefeil nรฅr du skriver inn URL-adressen, eller du opprettet egentlig ikke depotet pรฅ Github (via nettsiden deres).
Hvis feilmeldingen er akkurat som den du viser, manglet du endringen "myuser" for brukernavnet ditt.
Skriv inn git remote -v for รฅ se de angitte URL-ene. For รฅ endre det, bare sett git ekstern URL-adresse for opprinnelig URLNYHET
Erstatter URLNYT med riktig URL.
Til slutt, ikke glem at nettadressen er mellom store og smรฅ bokstaver.
Jubel! Paul.
Fantastisk!
Forklaret slik at selv de mindre kunnskapsrike i saken, som meg, forstรฅr det og kan ta vรฅre fรธrste skritt i git eller Github. Nรฅ er mange begreper klare for meg som push, pull eller commit.
Tusen takk!
Det var ideen! Jeg er glad!
En klem og takk for at du la igjen kommentaren din! Paul.
Genial
Et spรธrsmรฅl nรฅr jeg sletter filer som jeg ikke lenger trenger verken i lokale eller i Github-arkivet
Jeg retter opp tvilen min om รฅ slette kataloger med komplette filer
git rm -rf katalog
eller som ???
Slik sletter du filer:
git rm file1.txt
Slik sletter du kataloger (og innholdet):
git rm -r katalogen min
Jeg oppdaget at det sรฅ bra ut, takk
Og hvordan bruker jeg Gitlab?
I det minste kan det i elementaryOS ikke fullfรธre konfigurasjonen ...
Denne feilen vises nรฅr jeg vil lage en
git pull origin master
http://i.imgur.com/fy5Jxvs.png
Som forklart pรฅ skjermbildet du deler, er det endringer pรฅ serveren som ikke er innlemmet i versjonen som er lagret pรฅ datamaskinen din. I sin tur er det endringer pรฅ datamaskinen din som ikke er pรฅ serveren (som er de du vil laste opp). Derav konflikten.
Prรธv รฅ gjรธre en git pull fรธrst som foreslรฅtt i skjermbildet.
Takk for hjelpen, veldig god info, jeg vil sette den i praksis, takk igjen
I seksjonen: "Push filer fra lokalt depot til GitHub repository"
, du kan lese:
Dette vil laste opp alt innholdet i MyTest-mappen (lokalt depot) til GitHub (eksternt arkiv). For pรฅfรธlgende prosjekter trenger du ikke lenger รฅ fรธlge disse trinnene fra bunnen av. I stedet kan du starte fra trinn 3 direkte. ยป
Jeg begynner pรฅ dette fra Git. Kan du fortelle meg hva som er "trinn 3"?
Dessuten kommandoene:
git config โglobal user.name "brukernavn"
git config โglobal user.email "email_id"
Mรฅ de gjรธres i hver Git-รธkt?
Tilsvarende kommandoen:
git init "mappenavn"
Er det nรธdvendig รฅ kjรธre det i hver arbeidsรธkt med Git eller det aktuelle arkivet, hva skjer nรฅr jeg har to eller flere arkiver?
Flotte veiledninger, gratulasjoner, takk og hilsener.
Jeg forsto det perfekt, synd det er ingen GUI-klient som Windows / Mac: /
Jeg kom hit for รฅ lรธse et problem som jeg fรฅr fra: fatalt: Ikke et git-arkiv (eller noen av foreldrekatalogene): .git Er denne guiden lรธst ??? takk pรฅ forhรฅnd ๐
Brukernavn for 'https://github.com': ยซroyalAlexanderยป
Passord for 'https: // ยปroyalAlexanderยป @ github.com':
ekstern: Ugyldig brukernavn eller passord.
dรธdelig: Autentisering mislyktes for 'https://github.com/royalSanity/Mytest.git/'
hjelp meg