Transcript
Programmierpraktikum SS’15 Annette Bieniusa
Git und Github • Git ist ein dezentrales System zur Versionsverwaltung – Jeder Kollaborateur hat seine eigene Kopie – Änderungen erfolgen zunächst lokal (auch ohne Netzwerkzugriff) – Später werden sie an einen Server übermittelt und so für die anderen zugänglich
• Github ist ein webbasierter Hosting-Dienst für Git-Projekte
Typischer Workflow in Git Staging area
Working directory
Local repo
Remote repo
git add
git commit git push
git fetch git fetch git merge
Wie arbeitet man mit Git? • [Initialer Checkout: Heute gemeinsam] 1. git pull (damit der Workspace up-to-date ist) 2. Arbeit an dem Projekt 3. git commit + push (mit Commit-message, die beschreibt, was implementiert wurde) – –
Falls fast-forward klappt: Fertig! Andernfalls: [rejected – non-fast forward] • • • •
–
Pull Repository Automatischer oder manueller Merge (bei Konflikten)! git add git commit + push
Video: https://www.youtube.com/watch?v=HZEb0rZk4Y8
Voraussetzungen • Eclipse – Eclipse IDE for Java Developers – Version: Eclipse Luna SR2 4.4.2
• Java – JDK 1.8
• Github-Account (Name + Passwort) • Achtung: Eclipse verlangt u.U. eine ältere JavaVersion; in diesem Fall müssen mehrere JDKs installiert werden!
Setup: Git in Eclipse • Hinzufügen des Github Accounts zu Eclipse: – Window -> Preferences -> Team -> Git -> Configuration – Dort eintragen unter user: • email:
[email protected] • name: Annette Bieniusa
– Unter Git: • Oben: Default repository folder:
Anzeigen der Git toolbar unter Eclipse • Window → Customize perspective... • Auswählen von Git and Git Navigation Actions im Command Groups Availability tab. • Menü hat jetzt einen Eintrag “Git” sowie einige Buttons zusätzlich vorhanden
Initialer Checkout des Projekts • File -> Import -> Git -> Projects from Git • Dann: Clone URI • Im Dialog “Source Git Repository”: – URI: https://github.com/SoftechUniKL/.git – Protocol: https – User und Password (+ Store in Secure Store)
Aufgabe • Machen Sie sich mit dem Inhalt des Projektstubs vertraut! – Welche Klasse übernimmt welche Aufgabe? – Verwendete Libraries: • Swing [http://docs.oracle.com/javase/tutorial/uiswing/compo nents/index.html] • JFreeChart [http://www.jfree.org/jfreechart/] • OpenCSV [http://opencsv.sourceforge.net]
• Erste Erweiterung: Hinzufügen von weiteren Ausgaben!