git clone


  • Administrator

    Hallo zusammen,

    Ich brauche mal kurz eure Hilfe zu Git. Wenn ich git clone url richtig verstanden habe, dann wird hier doch eine Kopie des ganzen Repository mit allen Branches usw. usf. gemacht. Ich habe somit eine vollständige Kopie und bin dann völlig unabhängig vom anderen Repository, was doch eigentlich auch der Sinn hinter DVCS ist? Habe dies auch selber getestet, Repository angelegt, Clone durchgeführt, Original gelöscht und konnte darauf trotzdem auf allen Branches arbeiten.

    Nun behauptet allerdings jemand, dass dies nicht der Fall ist. Ein git clone url würde nur den aktuellen Branch mit dem letzten Commit im Repository hinter der URL holen. Der Rest wird nicht mitkopiert. Gegen diese Person kann ich allerdings nur mit schriftlichen Beweisen ankommen.

    Also:
    Wer liegt hier im Recht?
    Falls ich im Unrecht bin, dann klärt mich bitte auf 🙂
    Falls ich im Recht bin, dann gibt mir bitte Ressourcen, mit denen ich die andere Person erschlagen kann 😃

    Die Manpage zu git clone ist leider nicht erschlagend genug, da darin nicht wirklich explizit steht, was alles kopiert wird.

    Danke im Voraus!

    Grüssli



  • ich find die Doku da recht eindeutig

    This will copy the entire history of that project so you have it locally and it will give you a working directory of the main branch of that project so you can look at the code or start editing it.

    ^(Hervorhebung von mir)^


  • Administrator

    zwutz schrieb:

    ich find die Doku da recht eindeutig

    This will copy the entire history of that project so you have it locally and it will give you a working directory of the main branch of that project so you can look at the code or start editing it.

    ^(Hervorhebung von mir)^

    Nett, definitiv eine gute Quelle. Ich hoffe mal, die Person wird dem GitHub Team glauben schenken 🙂
    Die sollten ja wissen, wie Git funktioniert.

    Danke.

    Kennt jemand vielleicht interne Dokumentationen von Git, wo quasi steht, wie git clone zu funktionieren hat, ohne gleich den Code anzuschauen? Oder kennt jemand den Ort, wo man sowas finden könnte?

    Grüssli



  • Die offizielle Seite ist ja http://git-scm.com/documentation. Und von da wird verlinkt auf...

    edit: Das was Du schon kennst und

    http://schacon.github.com/git/gittutorial.html schrieb:

    This creates a new directory "myrepo" containing a clone of Alice’s repository. The clone is on an equal footing with the original project, possessing its own copy of the original project’s history.

    Und so weiter. Einfach mal durchklicken, steht eigentlich in jeder Doku genau so drin.


  • Administrator

    SG1 schrieb:

    Die offizielle Seite ist ja http://git-scm.com/documentation. Und von da wird verlinkt auf...

    Internal Server Error, aber ja, die Seite kenne ich.

    SG1 schrieb:

    Und so weiter. Einfach mal durchklicken, steht eigentlich in jeder Doku genau so drin.

    Ja, steht vielen Orten, ich möchte es nur so offiziell haben wie möglich. Steht auch im Pro Git Buch drin. Zum Beispiel:

    3.1.2. Cloning an Existing Repository schrieb:

    Git receives a copy of nearly all data that the server has. Every version of every file for the history of the project is pulled down when you run git clone. In fact, if your server disk gets corrupted, you can use any of the clones on any client to set the server back to the state it was in when it was cloned.

    Wie ich schon sagte, ich will die andere Person damit erschlagen 🤡

    Grüssli



  • Dravere schrieb:

    Wie ich schon sagte, ich will die andere Person damit erschlagen 🤡

    machs doch wie die anderen klugscheisser und plapper wahlweise das nach, was bei wikipedia steht oder nimm den ersten eintrag bei google. 🙄



  • Dravere schrieb:

    SG1 schrieb:

    Die offizielle Seite ist ja http://git-scm.com/documentation. Und von da wird verlinkt auf...

    Internal Server Error, aber ja, die Seite kenne ich.

    Nimm den . am Ende der URL mal weg.


  • Administrator

    Shade Of Mine schrieb:

    Nimm den . am Ende der URL mal weg.

    Doh! Hatte ich nicht gesehen. Dachte das wäre ein temporäres Problem der Seite 🙂

    Aber die Sache ist nun sowieso "geklärt" 😉
    Danke an alle!

    Grüssli

    PS: Falls die Polizei anfragt: Ich bin unschuldig! 😃



  • Übrigens muss man bei Git nicht unbedingt alle Branches, oder die ganze Historie holen. Gerade, wenn man nur an der aktuellen Version zum kompilieren interessiert ist, kann man so einiges an Zeit und Platz sparen.


  • Administrator

    Git-Pro schrieb:

    Übrigens muss man bei Git nicht unbedingt alle Branches, oder die ganze Historie holen. Gerade, wenn man nur an der aktuellen Version zum kompilieren interessiert ist, kann man so einiges an Zeit und Platz sparen.

    Und es wäre allen noch sehr geholfen gewesen, wenn du gleich gesagt hättest, wie man dies macht. Aber ich hole das mal für dich nach:
    Bei git clone muss man den Parameter --depth 1 angeben. Damit wird nur die aktuellste Version geholt. Es hat aber auch verschiedene negative Punkte, welche man sich bewusst sein sollte. Steht aber alles in git help clone .

    Grüssli



  • Dravere schrieb:

    Steht aber alles in git help clone .

    Warum soll ich es also hier reinkopieren?

    Doku lesen macht schlau.


  • Administrator

    Git-Pro schrieb:

    Dravere schrieb:

    Steht aber alles in git help clone .

    Warum soll ich es also hier reinkopieren?

    Doku lesen macht schlau.

    Woher soll der Hilfesuchende wissen, dass er in die git help clone Doku schauen soll? Vielleicht wird ein anderer Befehl dazu verwendet. Zudem möchte er vielleicht nur wissen, wie das geht. Dank meinem Beitrag muss er nun nur in git help clone nach depth suchen und findet, was er sucht. Wenn man nur git help clone angeben würde, müsste er immer noch die ganze Doku von git help clone lesen, obwohl ihn das meiste darin gar nicht interessiert.

    Grüssli



  • Dravere schrieb:

    ...obwohl ihn das meiste darin gar nicht interessiert.

    Aber das kann er vor dem Lesen doch noch gar nicht wissen!

    Zu deinem vorherigen Punkt: du hast es doch auch gefunden, oder etwa nicht?


Log in to reply