Das Video kommt von YouTube: erst beim Abspielen verbindet sich die Seite mit YouTube (Google).
Informatik Abitur III | Versionskontrolle: Wir nutzen Git.
Das Wichtigste aus dem Video
Tipp auf eine Zeit – das Video springt genau dorthin.
Transkriptautomatisch erstellt · 151 Zeilen
- hallo und herzlich willkommen zum dritten teil der informatik abitur serie im vergangenen teil haben wir bereits das erste kleinere java programm
- geschrieben und die hat dadurch auch getestet das euer setup in der entwicklungsumgebung funktioniert heute möchte ich mit euch ein ganz anderes
- thema angehen was allerdings sehr sehr wichtig ist auch wenn es nicht zum klassischen abitur stoff per se gehört und dort auch nicht geprüft wird
- dieses thema ist die versionsverwaltung in der praxis braucht die arbeit die er in der regel mit vielen leuten auf projekten zusammen das heißt es macht
- sinn die verschiedenen stände von von von software zu versionieren so dass man vernünftig mit mehreren leuten zusammen an einem projekt arbeiten kann aber auch
- in euren privaten arbeiten kann die sehr hilfreich sein weil wir so natürlich zwischenständen hin und her könnte vielleicht sogar verschiedene features
- parallel entwickeln könnte ohne dass sich die entwicklung gegenseitig stören das ganze werde ich euch heute zeigen am beispiel von gid geht ist wohl das
- bekannteste version verwaltungstool was derzeit auf dem markt gibt das gratis kostenlos wie viele dieser varianten daneben gibt es natürlich zahlreiche
- wettbewerber dazu gehören unter anderem svn merkel und diversen lösung google zum beispiel hat seine ganz eigene version
- verwaltungs software allerdings es gibt glaube ich das marktführende produkte im moment und wurde tatsächlich damals von linus torvalds entwickelt das ist der
- mensch der auch das linux betriebssystem entwickelt hat und der das mit dem ziel entwickelt die kompletten änderung von linux
- vernünftig in der versionsverwaltung pflegen zu können daher ist das ganze historisch entstanden geht könnt ihr euch im prinzip einfach im internet
- runterladen das heißt wenn ich euch das jetzt einmal zeige dann könnt ihr einfach googlen direkt auf der ersten seite oder zweiter
- treffer erste treffer ist dieser fall wikipedia aber der zweite treffer direkt sagt euch geht scm punkt kommt und hier findet ihr im prinzip die letzte version
- dass es in diesem fall die version 2 punkte 30 und die gibt es dann für sämtliche betriebssysteme zum runterladen
- die installations- prozedur unterscheidet sich dann in der regel je nach je nach betriebssystem ich habe in meinem fall das ganze aber
- schon installiert und werde euch dies nun nicht mehr noch mal zeigen wenn ihr damit probleme habt dann schreibt das gerne in die kommentare oder schreibt
- mir eine nachricht dann werde ich euch dabei helfen was ihr hier in der seite schon sehen könnt ist dass es auch die kleins kippt falls sie diesen begriff
- nicht kennt muss ich euch jetzt ihr erst mal kurz das erklären und zwar geht selbst ist erst mal ein tool das funktioniert nur auf der kommandozeile
- das heißt nur im terminal das heißt nutzt die effektive indem ihr in der kommandozeile oder im terminal halt text eingibt und dadurch die das
- programm bedient weil ich würde euch gerade am anfang auch empfehlen die kommandozeile zu nutzen weil die ersten projekte in dieser serie sehr klein sein
- werden und ihr werdet dadurch die chance erhalten den prozess mehr zu verstehen als wir das mit einem oberflächen also mit einem gut tut
- bei einem kleinen können werden in der praxis habt ihr dann eventuell die kleins was ich aber auch auf gesehen habe ist dass man tatsächlich selbst man
- bedenke man nur 2 gearbeitet weil es zum beispiel man auch bei einem server unterwegs ist der gar keine web oder desktop oberfläche hat und dann
- vielleicht noch mal über einen webservice denn eine optische schicht über das gc-tor ii hat wo man dann zum beispiel ende gegeneinander besser sehen
- kann ja das ist eigentlich alles was es zu den installationen zu sagen gibt
- vorteil oder groß ihr fragt euch vielleicht wieso brauche ich sowas ist ja voll komplizierte wird gerade gleich mal sehen dass das ganze auch zumindest
- am anfang nicht ganz einfach ist man kommt dabei sehr schnell rein und da muss man einfach sagen dass die zwei haupt vorteile in der praxis
- sind wenn ihr alleine an einem projekt entwickelt da könnt ihr da durch euren eigenen stand mehr sanieren könnte halt absichern wo ihr gerade seid könnt das
- ganze auch auf eine remote pushen das heißt irgendwo steht ein server der im prinzip eine version von getoastet und dort hat die etwas was ich ein
- repository nennt und das könnt ihr euch vorstellen wie ein navi einen dateiordner bei dropbox oder soweit das ähnlich ist nur das ist halt optimiert
- auf textdateien auf code ist das heißt es wird nicht gut für große binärdateien die bilder zum beispiel funktionieren aber es wird sehr gut für dokumente
- funktionieren und da macht im prinzip eine versionsverwaltung darüber hat den vorteil ihr sichert gleichzeitig auch
- auf dem server das heißt sollte eure lokale festplatte kaputt gehen was mir mal passiert ist habt ihr das ganze gesichert und zweiter
- vorteil ist wenn ihr einem team arbeitet könnt ihr sehr einfach zusammen koordiniert an einem software projekt arbeiten das heißt wenn ihr jetzt in
- einem abiturienten ein projekt zu zweit habt dann macht das durchaus sinn solange ihr euch nichts zu zweit vor dem bildschirm setzen möchten programmieren
- volt sondern jeder seinen eigenen teil programmieren möchte wie das in corona zahlen ja durchaus öfter der fall sein könnte dann macht es durchaus sinn mit
- gips arbeit an den prozess könnt ihr euch so ein bisschen eh nicht vorstellen wie wenn man mit mehreren leuten an einem word dokument zum beispiel
- arbeitet da ist mittlerweile ja so dass das gab es tatsächlich vor ein paar jahren noch nicht dass man gleichzeitig die änderung von anderen personen sehen
- kann geht es vom prinzip ähnlich allerdings doch auch ganz anders dazu werde ich gleich mal kommen generell kann ich euch auch damit ihr
- das ganze in der praxis anwendet dieses modell oder oder sämtliche kursinhalte das heißt sämtliche programme die wir schreiben bei den präsentationen und den
- grafiken überlege ich noch weil sie nicht das dass wir ein bisschen von der qualität abhängig sie erstellen werde aber ich plane die kursmaterialien auf
- einem betrieb ossi tory bereitzustellen das habe ich jetzt schon mal erstellt ich nutze dafür ein service der der guitar preis das ist glaube ich einer
- der großen öffentlichen server dies so gibt er ist für privatanwender solange die repositories öffentlich sind gratis und ich werde diesen service nutzen um
- euch die kursmaterialien bereitzustellen so dass er einfach auf die kurs material zugreifen könnt wie ihr seht ist dieses repository bis jetzt sehr leer
- ich habe da also nur eine sogenannte genau dort drin die erkläre ich euch später noch oder vielleicht auch erst im verlauf des
- kurses muss immer gucken ich habe hier eine leistungs datei mit der ihr im prinzip sagen könnt ok alles was hier öffentlich verfügbar ist steht
- unter der und der lizensierung das hat was mit rechten zu tun ich habe hier eine sehr freie lizenz gewählt das heißt ihr könnt das material verwenden wie ihr
- wollt und noch eine kleine readme datei die im markt und format geschrieben ist und die ich dann hier unten ausgetestet wird
- automatisch in diesem fall jetzt nur ein bisschen trivialer text drinsteht was wir jetzt machen werden ist die inhalte die wir letztes mal vorbereitet haben
- also wir haben ja die hello world class und java datei probleme gehabt oder werden die java programmiert und die class datei ist hier in kompilierung
- prozess entstanden die möchte ich euch ja und wir haben hier sogar auch mal geriet dabei aber diese automatisch generiert diese
- dateien möchte ich mit euch in das git repository verschieben dazu gibt es mehrere möglichkeiten wie man das ganze macht ich werde jetzt die
- möglichkeit die glaube ich für diesen teil so einfach ist oder wollt ihr halt am anfang nicht viel gemacht haben dass wenig tot ist ist die einfachste
- möglichkeit in unserem fall dass wir jetzt im terminal zurück gehen in den ordner wo ich mein gedrückt ihr seht erzieher ich habe hier einmal
- teil zwei und einmal weitere materialien und alles aus morden an teil 2 möchte ich im prinzip in meine person schieben und weitere materialien ist für mich
- erst mal hier ja ordner wo ich erstmal die sachen speicher wo ich mir noch nicht sicher bin ob ich die wirklich aufgibt bereitstellen möchte oder nicht
- was ich nun also mache ist ich sagt klopp weil ich ein clown bei einer kopie erstellen möchte und dann suche ich mir
- im prinzip bei code und clown diese diese url raus und quote damit das repository was ihr jetzt sehen werdet ist dass ein ordner hinzugefügt wurde
- decken aus weiß ich das repository und ich werde jetzt einmal da ich mit der windows kommandozeile nicht immer sehr bewandert bin einen kleinen trick
- anwenden in den explorer gehen den ordner öffnen sehe ich jemanden drei ordner schneidet den teil zwei ordner aus und kopieren erstmal einfach hier
- rein er sagt mir jetzt okay das geht nicht weil hier gerade bekomme drin geöffnet
- sind natürlich ich habe studiert hier gerade offen deswegen schließe ich einfach mal den ordner so dass das nicht mehr geöffnet
- ist und sage vorgang wiederholen das ganze hat funktioniert kleine anmerkung hier noch ihr seht hier die drei dateien die aus dem internet
- runtergeladen worden sind also vom repository das ist einmal das leistungsprofil und die datei ihr sind auch einen versteckten ordner wenn ihr
- nur sehen könnt wenn ihr ausgeblendete elementar anzeigen lassen und in diesem verstecken ordner sind im prinzip internet sachen gespeichert brauche ich
- erstmal nicht mehr zu interessieren muss man in der praxis eigentlich die dran was wir jetzt machen werden in visual studio code ist eigentlich ganz einfach
- wir werden jetzt sagen open voller und öffnen jetzt den ordner den wir gerade erstellt haben das heißt der informatik abitur youtube
- ordner und wir sehen hier jetzt teil 2 wir sehen hier jetzt den lippen und den source ordner und hier sehen zusätzlich dass diese dateien alle grün markiert
- worden sind das heißt dass man sie neu zum repository hinzufügen kann ihr seht hier visual studio code kommt
- selbst schon mit so einer kleinen maske die man nutzen kann und gut zu bedienen wir werden in diesem tutorial das aber nicht nutzen ihr könnt das gerne tun
- ich empfehle euch allerdings erst mit der kommandozeile bewundert zu werden und danach die ua kleins was das hier im prinzip ist zu verwenden
- denn nur dann werdet ihr das prinzip ist agiert vernünftige verstehen und das wird euch in der zukunft helfen ja wir machen noch einen kurzen test
- das habe ich selber noch nicht getestet deswegen bin ich jetzt mal gespannt ob ihr die dateien auch einfach laufen lassen können und wir sehen können wir
- noch das heißt unsere extension funktioniert gut auch wenn das klar war programm in einem unterordner versteckt ist immer gut zu wissen
- deswegen bin ich da jetzt ganz zufrieden was wir jetzt machen um das ganze hier simpel zu halten ist wir machen einmal einen gips dallas geht es los gibt euch
- im prinzip den status eures kit repositories ihr müsst dafür in dem ordner seien der der oder ihr müsst dafür einem unterordner sein der zu
- eurem geht repository gehört das heißt ja im prinzip ein unterordner von diesem informatik abitur youtube ordner ihr seht jetzt das teil 2 an trägt ist
- und ich mache jetzt mal ein geht es da damit fügt ihr einfach alle dateien die man hinzufügen kann hinzu wenn ich jetzt erneut einiges machen wird mir das
- detaillierte aufgelistet und das sagt mir dass ich zwei änderungen habe die ich jetzt kommen kann dass zwei änderungen wo ich sagen kann ok das
- möchte ich als änderungen als als eine version festlegen und deswegen sieht man hier die zwei dateien wieso jetzt nur zwei dateien fragt ihr euch vielleicht
- wenn ich habe ja einmal die wmd datei und die java datei aber die punkt class datei fehlen hier und das hängt mit der getec norden
- zusammen denn innerhalb der gegner oder gedeckt nur dateien kann man ja im prinzip patterns also im prinzip im prinzip kann man hier definieren
- welche dateien man nicht in das getriebe wird hochladen möchte das ist tatsächlich best practice auch der praxis ihr erkennt hier zb das blut
- dateien nicht hier ausgeschlossen werden und falls ihr euch dran an den ersten teil erinnern könnt das blut eine entwicklungsumgebung wie die für java
- relativ bekannt ist und dass ihr die gegner datei ist tatsächlich von github selbst generiert weil ich bei der erstellung des posse tories angegeben
- habe dass das ganze projekt ist das heißt typische java dateien werden hier nicht hochgeladen generell ist die best
- practice so alle dateien die in irgendeiner art und weise generiert sind sollten nicht mit in das java repository oder das kit app store hochgeladen
- das heißt sämtliche dateien die ihr zum beispiel durch kompilierung erhaltet wie das bei der glas datei ist es sollte nicht mit hochgeladen werden
- einfach um das sprosse tory klein zu halten und das dann auf jedem rechner lokal erzeugen zu können hat den vorteil dass das für patric klandt bleibt und
- daher bei jedem claudia das ghetto sie komplett lohnt ist es sehr empfehlenswert dass klein 2 eine kurze anmerkung noch ist hier jetzt nicht der
- fall aber wann immer ihr passwörter zeit sehr vorsichtig und packt diese niemals in europa story macht oder stellt sicher
- dass die immer durch die getec noch ausgeschlossen werden denn wenn ihr das einmal hochgeladen hat ist das in der historie gespeichert
- jeder selbst wenn ihr dann die änderung rückgängig macht wird das in der historie noch lesbar sein das heißt in diesem fall müsst ihr
- definitiv euer passwort ändern deswegen generell keine passwörter im klartext im getriebe zu streuen das ist so eine daumenregel die
- einheiten sollten genau das müssen wir jetzt machen wir haben jetzt ja den hit gemacht wir müssen jetzt noch angeht ein comic form und ein cockpit ist so etwas
- oder ist im prinzip ja die aussage okay ich habe jetzt die änderung die ich gerade haben möchte ich als eine version als als eine teil version als ein ko mit
- sehen und die zusammen in die cold case rein integrieren ich sage also gibt comet - m - m steht hier für message also
- nachricht und gebe dem noch eine eine zeile um zu beschreiben was ich da tue und ich schreibe jetzt etwa informatik abitur youtube sie ließ ich sage okay
- und jetzt sagt er mir ich muss noch sagen bin ich eigentlich das heißt ich muss jetzt noch mein dad hat kommt für ihr konfigurieren das
- heißt ich sage hier jetzt geht config gehört dass mit dem global fleck machen ich mache das in der regel ohne weil ich verschiedene accounts habe oder nicht
- nur bekanntes aber verschiedene accounts habe das heißt abhängig vom service nutze ich verschiedene ja und ich habe jetzt einmal einen namen und eine e mail
- die ich tatsächlich einmal nachlese muss reicht die auswendig kann ich gar nicht weiß so da bin ich wieder ich habe in der zwischenzeit meine
- e-mail-adresse konfiguriert die ich tatsächlich einfach nicht mehr wusste und ihr seht ich bin immer noch in dem status wo ich mein komplett fertig
- machen muss deswegen gesagt ich nochmal geht com - m2 auf informatik abitur series mit das ganze ist passiert wunderbar ihr
- seht das ganze wird hier als erfolgreiche klage könnte davon ausgehen dass es erfolgreich war weil kein fehler geworfen wurde und ihr seht hier auch
- dass die grünen anmerkungen verschwunden sind so jetzt kann ich hier einmal gucken hat das für das denn dazu dass ich jetzt hier meine änderung sehe und
- ihr seht das macht ihr überhaupt gar nichts und wichtig ist dass man immer ihr solche änderungen gemacht habt oder ihr comics gemacht hat und die am ende
- veröffentlichen möchte also die aufgeht hochladen möchte dass ihr in diesem fall ein push macht um die datei dann auch auf die mode ist man nennt das ganze
- dann tief remote zu schieben ich muss mich jetzt einmal einloggen das mache ich einmal auf dem anderen fenster und gebe euch in 20 sekunden wieder
- bescheid so nach ich glaube dann tatsächlich 3 versuchen das ganze erst auch funktioniert ich habe mich erfolgreich eingeloggt und auch schon
- mal eine änderung veröffentlicht das ganze seht ihr jetzt online und zwar könnt ihr das jetzt einmal ignorieren weil das tatsächlich nur ein einmaliges
- trockenes das heißt es wird euch nichts mehr bringen aber hier seht ihr jetzt wenn ihr die seite aktualisiert dass wir jetzt einen ordner teil 2 mit hello
- world haben ihr seht hier die auto generierte die datei von fischl stewart und ihr seht hier die source datei die hello world
- ottawa wir unseren youtube genau und das war eigentlich so die praktische anwendung von git ich habe noch eine kleine
- präsentation vorbereitet um euch die konzepte noch mal näher zu bringen und noch mal zu rekapitulieren was wir denn jetzt eigentlich getan haben und was
- geht eigentlich noch so alles bietet ich habe hier schon ein paar der wichtigen gibt befehle benutzt ich gehe hier einfach einmal schnell durch ihr müsst
- euch nicht alle merken aber nur dass ihr es mal gehört habt geht kann euch ein leeres git repository initialisieren sprich in diesem fall hatte ich ja schon
- eins auf der remote angelegt also auf github in diesem fall das geht ab mein meine mode also meinem ein ort im internet und lokal habe ich dann das
- repository vom internet zu mir gezogen ich kann das ganze aber auch andersrum machen das erste lokal anlegen und dann auch die wut pushen und in diesem fall
- wirklich geld nutzen um das ganze um das git repository lokal anzulegen und danach pushen zu können geklaut habe ich genutzt um das repository erstmalig von
- der remote auf meine lokale instanz zu ziehen das habt ihr gesehen in der verwendung im pulk kann man dann um den aktuellsten stand von remote auf den
- lokalen auf den lokalen stand zu ziehen das habe ich jetzt hier nicht genutzt werden wir im weiteren verlauf aber wahrscheinlich mal tun geht nutzt man um
- seine änderungen lokal hinzuzufügen gleichzeitig wenn ihr lokal dateien löscht könnt ihr diese mit gm dann auch aus dem repository löschen und so wie
- red oder rm nutzt müsst ihr danach ein komet fertig machen und dieser kommt ist dann am ende eine spezifische version das seht ihr gleich auch in diesem
- diagramm sobald ihr mehrere versionen können ein oder mehrere comics haben sobald ihr das gesammelt habt könnt ihr euch das ganze dann auf die auf die mode
- pushen und wenn ihr das getan habt dann sind eure änderungen auch für andere leute sichtbar und geht hat eine möglichkeit die die
- codebasis zu verzweigen denn falls ihr das vielleicht schon mitbekommen habe der unterschied zwischen kitsch und wörth ist dass ihr
- ihn geht immer auf einer stabilen version arbeitet und kein anderer gleichzeitig eure eigene version editieren sollte oder auch kann weil ihr
- lokal einen eigenen stand habt das ist es extrem wertvoll in der softwareentwicklung wenn ihr zb bugs oder feed bugs behebt oder features
- entwickelt ist es wichtig dass der der stand auf dem ihr arbeitet erst mal konstant bleibt damit ihr ja nicht mit anderen entwicklern und gegenseitig in
- die quere kommt deswegen bietet tatsächlich ein ein jahr fast oder ein baum modell an wo man verschiedene zweige öffnen kann und dann der erste
- entwickler auf dem ersten zwei gearbeitet der zweite entwickler auf dem 22 und so weiter und so fort und um so ein zeug zu erstellen nutzt
- man derzeit das kommando gadget check out - b und da gibt man den namen des zweigs an ich glaube das könnte sich in der
- zukunft leicht ändern aber ja das ist der aktuelle stand von edith befehle und fiel so verwendet werden hier nochmal kurz erklärt das wie gesagt
- müsst ihr jetzt noch nicht grundlegend verstehen aber nur das ihr schon mal gehört habt ihr seht ihr dieses zweig modell mit den einzigen und und ein
- knoten also das hier ist ja ein graf und ein knoten in diesem graf ist immer ein comic das heißt das ist ein knoten in diesem graf ist der stand den ihr mit
- diesem befehl erzeugen das heißt nachdem er diesem befehl ausgeführt habt habt ihr c1 erzeugt dann mach dir geht's oder gprs und kommentiert nochmal und habt
- einen zweiten stand das ist dann zweifle 2 jeder dieser comics hat eine 1 also eine eine id die es nur einmal gibt das heißt so ein komplett ist eindeutig und
- was dann gemacht wird ist wenn also es gibt immer einen standard brunch der heißt bei github main bei vielen anderen software es heißt ja noch oder bei
- vielen anderen geht anbietern heißt er master und auf dem wird regulär eigentlich weniger entwickelt werden wir jetzt aber in
- unserem beispiel machen und das ist quasi der haupt points oder software wo die wirklich verliebte version liegen sollte und wenn jetzt jemand irgendwie
- ein feature entwickeln möchte kann er als neuen bahnchef nnen die nzb öffnen seine eigenen kommissar einpacken und dann am ende diese comics mit dem mit
- dem mit maine branche zusammenführen das ganze nennt sich dann merger gibt es tatsächlich verschiedene strategien die ich jetzt im detail nicht erklären dass
- wertschöpfende ist dass man an dieser stelle von der merge ein review einführen kann das heißt man kann zum beispiel sagen okay wenn jemand merken
- möchte muss jemand anders den code for durchgelesen verstanden und freigegeben haben und nur dann darf er diesen match machen
- und das führt dazu dass man viele bugs identifizieren kann bevor sie eigentlich in den männern kommen und dadurch eure code qualität
- natürlich deutlich deutlich in die höhe schießt deswegen ist geht in der praxis eine der meistgenutzten versionsverwaltung und ja das eigentlich
- auch nur zum theoretische konstrukt dahinter das soll es für heute auch gewesen sein im nächsten video gehen wird dann das
- erste mal wieder tiefer in den oder wir fangen eigentlich dann richtig an den informatiker vitalstoffe aufzuarbeiten deswegen freue ich mich euch dort
- wiedersehen zu dürfen und sage jazz bis zum nächsten mal
Zum Nachlesen
GitGit [ɡɪt] ist eine freie Software zur verteilten Versionsverwaltung von Dateien, die durch Linus Torvalds initiiert wurde.
VersionsverwaltungEine Versionsverwaltung ist ein System, das zur Erfassung von Änderungen an Dokumenten oder Dateien verwendet wird. Alle Versionen werden in einem Archiv …
Concurrent Versions SystemConcurrent Versions System (CVS) ist ein Software-System zur Versionsverwaltung von Dateien, das hauptsächlich im Zusammenhang mit Software-Quelltext verwendet …
Apache SubversionApache Subversion (SVN) ist eine freie Software zur zentralen Versionsverwaltung von Dateien und Verzeichnissen. Apache Subversion. Subversion-Logo.