13

Informatik (Subject) / Github (Lesson)

Fragen zum IT-Projekt

This lesson was created by fatamorgana.

Learn lesson

Advertisement
  • Was ist GIT/Github? GITHUB ist eine Source Code Management Plattform zur verteilten Versionsverwaltung von Datein Speichert seine Daten nicht als Serie von Änderungen oder Unterschieden, sondern als Serie von Schnappschüssen
  • Was ist ein Repository? Ein Repository ist eine zentrale Ablage für Daten, Dokumente, Objekte und Programme dient zur Speicherung von verschiedenen Versionen des Projekts (Quellcode) lässt mehrere Benutzer gleichzeitig an einem Projekt arbeiten
  • Was ist ein Branch? (2 Antworten) ist... paralelle.. ist eine Referenz(Zeiger) auf einen bestimmten Commit. paralelle Version bzw Kopie des Repositorys, die aber keinen direkten Einfluss auf den Master bzw die anderen Repos hat. o Können jederzeit spielend erstellt und gelöscht werde, da sie nur kleine Dateien sind, die eine 40 Zeichen lange SHA-1 Prüfsumme der Commits enthalten, auf die sie verweisen o Branches müssen nicht im Remote Repository existieren, werden so zum Testen neuer Features verwendet, ohne bereits funktionierende Teile zu beschädigen
  • Was ist ein Commit? Ein Commit ist eine Freischaltung einer individuellen Änderung einer Datei. Dabei wird jedes mal ein einzigartige ID vergeben mit dem Secure Hash Alogrithm 1. Änderungen werden in Checksummen berechnet und mit diesen referenziert mit einer 40 zeichenlangen Zeichenkette aus hexadezimal. -> Eindeutige Versionierung
  • Was ist ein Remote Repository? externer Speicherort, ist die Version des Projektes, die auf dem Server von github.com gehostet wird. Lokal Repo verfolgt den Remote Repo
  • Was ist ein Remote Tracking Branch? sind externe Branches, d.h sind Referenzen, die den Zustand der Remote Repositorys lokal abbilden
  • Was versteht man unter einem Merge? Was ist fast forward merge wann kommt es zu merge-Konflikten Merge steht für das Zusammenführen von Branches Mit Merge werden Änderungen aus einem anderen Branch in den aktiven Branch übernommen.Findet in der Zeit, in dem aktiven Branch keine Änderung statt, setzt GIT die Referenz/Branchzeiger/HEAD des aktuellen Branches auf die des zu mergenden Commit non ff Commit:Commit ist kein direkter Nachfolger , 3 wege merge , 2 eltern commits, erstellt einen neuen merge commit Merge Conflikt, wurden in beiden Branches, Änderungen an den selben Codestellen commitet, -> Lösung :Konflikte beheben, Marker entfernen-> Änderungen committen
  • Was versteht man unter einem Fetch? Holt die neuesten Änderungen aus den Remote Repositorys und aktuallisiert die Remote Tracking Branches ohne die Branches zusammenzuführen
  • Was versteht man unter PUSH? Wann kommt es zu einem Konflikt? Branch im lokalen Repo kann mit PUSH zu einem extrenen Repository übertragen werden bzw deine Änderungen werden hochgeladen Änderungen im Ziel Repo, Commit in Remote Branch muss Vorgänger sein
  • Was ist Pull und was ist der Unterschied zu Fetch? PULL: besteht auf Fetch und MergeAktualisierung der Remote Branches und lade die Änderungen in meinen Branch Fetch aktualisiert deine Remote Tracking Branches, der Befehl ändert nie deine eigenen lokalen BranchesPULL bringt deine lokalen Branches auf den neuesten stand mit den Remote Branches, und aktualisiert die anderen Remote Tracking Branches Pull holt die neuste Version vom remote Branch und merged diese mit dem local branch.Fetch holt nur die neuste Version des Quellcodes/Datei.
  • Advertisement
  • Aus was besteht das lokale Repository? Besteht aus 3 Instanzen, Arbeitsverzeichnis auf der FestplatteStaging Area, Zwischenablage, vorgemerkt was im nächsten Commit stehen sollHEAD bzw Gitverzeichnis
  • Was ist ein Pull Request? Programmierer A bittet Progammierer B dieÄnderungen von A in den von B verwalteten Code zu integrieren.B muss die Änderungen von dem Server des liegenden Git Tree von A zu ziehen
  • SHA-1? Secure Hash Algorithm 1 (SHA-1): SHA-1 erzeugt einen 160-Bit HashCode, dargestellt in hexadezimalen Zahlen (40 Zeichen lang) Zusammenhang mit GIT: Hier bei wird ein Hash-Code zur eindeutigen Versionierung erstellt. Bei der geringsten Zeichenänderung wird ein neuer HashCode generiert.