Access
 sql >> Datenbank >  >> RDS >> Access

Verwenden von OASIS-SVN und Git für die Access-Quellcodeverwaltung

HINWEIS: Ich werde dieses Thema ausführlich im bevorstehenden monatlichen Webinar zu Access und SQL Server am 9. Juli um 18:30 Uhr CDT behandeln. Registrieren Sie sich, damit Sie den Prozess live verfolgen und Fragen stellen können!

Da wir mit mehreren Anwendungen und manchmal im Team arbeiten, ist die Kontrolle des Quellcodes ziemlich wichtig für die Verwaltung von Änderungen. Wir lieben es, Git für unsere Projekte zu verwenden. Ursprünglich war die Verwendung von Git mit Access eine Herausforderung, aber dank eines Add-Ins namens OASIS-SVN können wir Git effektiv mit Access-Projekten zum Verwalten der Änderungen verwenden.

Warum Quellcodeverwaltung verwenden? Kannst du es nicht einfach zumachen?

Das Hauptziel der Quellcodekontrolle ist es, Kriminalfälle einfach beantworten zu können.

Das ist besonders kritisch, wenn Sie es mit einem Fehlerbericht zu tun haben und Sie daran erinnert werden, dass Sie etwas Ähnliches schon einmal gesehen haben und dachten, dass Sie es vielleicht behoben haben, aber der Kunde es immer noch meldet. Wenn der Fehler jedoch vor sechs Monaten „behoben“ wurde, könnte es sich genauso gut um einen brandneuen Fehler handeln, da wir die Korrektur, die wir vor sechs Monaten vorgenommen haben, bereits vergessen haben. Ich weiß nicht, wie es Ihnen geht, aber die Aussicht, durch einen Haufen gezippter Backups zu graben, fühlt sich nicht sehr … auffindbar an.

Das Einfügen Ihrer Änderungen in eine Quellcodeverwaltung erfordert Disziplin, erleichtert jedoch das Überprüfen und Verwalten von Änderungen erheblich. Sie können ganz einfach den Verlauf durchsuchen und sehen, was sich genau geändert hat.

Ein weiteres Szenario besteht darin, herauszufinden, was sich genau geändert hat. Wenn Sie mehrere Änderungen vorgenommen haben und diese überprüfen müssen, bevor Sie eine neue Version veröffentlichen, hilft Ihnen die Quellcodeverwaltung. Sie haben die Möglichkeit, Ihre Arbeit zu überprüfen und sicherzustellen, dass Sie alles getan haben, was Sie sich vorgenommen haben. Kein „Ich glaube, das habe ich schon gemacht“ mehr. Nur um vom Kunden zu erfahren, dass Sie dieses kleine Detail vergessen haben, nach dem der Kunde Sie letzte Woche gefragt hat. Darüber hinaus ermöglicht dies dem Team, Code-Reviews für andere durchzuführen; Wir können uns die Arbeit anderer ansehen, Feedback geben und uns gegenseitig helfen, einen hohen Qualitätsstandard aufrechtzuerhalten.

Warum Idiot? Access funktioniert mit Visual SourceSafe, nicht wahr?

In Versionen vor Access 2013 unterstützte Access die Quellcodeverwaltung nativ, verwendete jedoch eine proprietäre Microsoft-Spezifikation, MSSCCI. Um es noch schlimmer zu machen, geht die Spezifikation von einem Check-out/Check-in-Modell aus, das Entwicklern eine exklusive Sperre für die Objekte gibt, an denen sie arbeiten. Darüber hinaus waren die Tabellen in der Access-Anwendung im Grunde ein großer Fleck, der nicht gelesen, geschweige denn überprüft werden konnte.

In der Praxis ist ein solches Modell sogar in einem kleinen Team sehr umständlich zu verwenden. Ein Hauptproblem besteht darin, dass eine Änderungsanforderung selten nur für ein Objekt bestätigt wird; Die Entwickler müssen möglicherweise mehr als eine Handvoll Objekte berühren, und daher können Kollisionen unvermeidlich sein, insbesondere für die Kern-/gemeinsam genutzten Module.

Git vermeidet all die Hässlichkeit, die wir beim alten Check-out/Check-in-Modell sehen, aber dies erfordert eine andere Philosophie bei der Verwaltung der Änderungen. Anstatt etwas auszuchecken, arbeiten wir einfach einen Zweig ab und wenn wir damit fertig sind, führen wir ihn wieder in den Hauptzweig zusammen. Wir können mehrere Zweige parallel haben, wenn wir wollten, aber in der Praxis brauchen wir nur 2 oder 3 parallele Zweige; eine, die die Produktionsversion darstellt; andere für die Entwicklung und vielleicht ein drittes für kritische Fehlerbehebungen. Dies kann mit einem Access-Projekt erfolgen und sollte dies auch tun. Andernfalls kann es sehr schwierig sein, den Überblick darüber zu behalten, was in die Produktionsdatei gelangt, insbesondere bei nicht trivialen Anwendungen.

Eine ausgezeichnete Ressource zum Erlernen von Git finden Sie hier; Es hat einen Sandkasten, damit Sie mitspielen können. Wenn Sie wie ich gerne fleischige Stücke essen und wissen, wie es funktioniert, ist dies eine gute Ressource.

Hören Sie schließlich auf, Visual SourceSafe bereits zu verwenden. Es ist fehlerhaft, neigt zum Verlust Ihrer Daten und wird seit _Jahren_ nicht mehr unterstützt, nicht einmal von Access seit 2013.

Aber wenn Access 2013+ keine Quellcodeverwaltung mehr unterstützt, wie könnten wir es dann noch haben?!?

Weil OASIS-SVN kein MSSCCI-Anbieter ist, sondern nur ein einfaches Access-Add-In. Es gibt andere ähnliche Access-Add-Ins (z. B. Ivercy zum Beispiel), die die Einschränkung umgehen. In allen Fällen verwenden diese Add-Ins genau dieselben undokumentierten Methoden, die Access intern für die Quellcodeverwaltung verwendet hat. Application.SaveAsText und Application.LoadFromText . Diese Methoden sind in der aktuellen Version von Access noch vorhanden. Nebenbei gibt es einen UV-Artikel, um dies zu dokumentieren und die Kontinuität zu gewährleisten. OASIS-SVN funktioniert auch mit der aktuellen Access-Version weiterhin einwandfrei.

Warum redest du immer von OASIS-SVN und git? Kann ich einfach das eine oder andere verwenden?

Es ist wichtig zu verstehen, dass sich beide Tools ergänzen und Sie beide benötigen. Sehen Sie, der Grund, warum Sie OASIS-SVN brauchen, ist, es Ihnen so einfach wie möglich zu machen, Ihre harte Arbeit zu erledigen und sie als ein Bündel von Textdateien darzustellen, anstatt sie in einem großen Blob einer Binärdatei zu haben, die das ist ACCD*-Datei. Es ist nicht sinnvoll, die ACCDB-Datei quellcodegesteuert zu haben, da sie keinen ordnungsgemäßen Änderungsverlauf aufweisen würde und weitgehend unlesbar wäre. Daher ist OASIS-SVN das Werkzeug zum Erstellen der Textdateien, die zum Neuerstellen Ihrer Access-Anwendung verwendet werden können, und es ist die Aufgabe von Git, diese Dateien tatsächlich in den Quellcode zu überführen. Das Git kann und sollte nicht mit der ACCDB-Datei arbeiten.

Wenn Sie neu bei git sind, haben Sie einen zusätzlichen Schritt im Vergleich zu dem, was andere normalerweise in ihren Visual Studio-Projekten tun, da Sie mit einer Binärdatei arbeiten, nicht mit einem tatsächlichen Satz von Ordnern mit einer Reihe von Textdateien mit lustigen Erweiterungen. Sie müssen sich also angewöhnen, Ihre Änderungen konsequent zwischen der ACCDB-Datei und den Textdateien, aus denen Ihr Git-Repository besteht, zu exportieren/importieren.

Voraussetzungen

Um loszulegen, benötigen wir 3 Softwarekomponenten:

  1. Git für Windows
  2. TortoiseGit
  3. OASIS-SVN

Genau genommen braucht man die 2. und 3. Software nicht. Sie könnten eigentlich nur mit dem ersten auskommen, aber der große Nachteil ist, dass Sie manuell exportieren/importieren müssten, indem Sie Ihr eigenes VBA-Modul schreiben, um dies zu tun, und glauben Sie mir, das ist aus Gründen, die noch klarer werden, eine Menge Arbeit wir folgen mit. Daher wird OASIS-SVN dringend empfohlen. Sie müssen TortoiseGit auch nicht haben, aber ich mag es wirklich, eine GUI zu haben, um die Arbeit zu vereinfachen. Das mag einige Befehlszeilen-Puristen beleidigen, die Ihnen sagen werden, dass Sie git nur in einer Befehlszeile verwenden sollten, nicht über eine hübsche GUI. Ich mag es jedoch faul und schnell und meistens ist der Prozess einfach, da es für mich schneller ist, einfach Befehle aus einem Menü auszuführen, als eine Bash-Shell zu öffnen und einen Befehl einzugeben. Das heißt, TortoiseGit ist wirklich nur ein dünner Wrapper für Git-Befehle, also solltest du gut daran tun, genau darauf zu achten, welcher Git-Befehl es ausführt und was er bedeutet.

Installieren Sie sie alle; Für detaillierte Anweisungen verweise ich auf die jeweiligen Websites. Sobald dies alles eingerichtet ist, müssen Sie ein Projekt haben, das Sie steuern möchten. Darüber hinaus benötigen Sie einen Ort, an dem Sie als Upstream-Repository fungieren können. Vielleicht haben Sie ein Azure DevOps-Konto? Bit Bucket? GitHub? Es stehen Ihnen mehrere Optionen zum Hosten Ihrer Quellcodeverwaltung zur Verfügung. Heck, wenn Sie geneigt sind, könnten Sie sogar einen privaten Git-Server einrichten. Aber auch das sprengt den Rahmen des Artikels. Auch hier verweise ich auf die Dokumentation des jeweiligen Anbieters zum Einrichten eines leeren Repositorys.

Sobald Sie ein leeres Repository haben, sollten Sie einen Link darauf erhalten. Wir verwenden Auzre DevOps und haben ein neues Repository erstellt, das sich unter dieser URL befindet:
https://samplecompany.visualstudio.com/DefaultCollection/z_Sandbox/_git/SampleApplication
Jetzt, da wir einen Link für ein leeres Repository haben, können wir mit der Einrichtung beginnen.

Ein lokales Repository erstellen

Obwohl OASIS-SVN einen Assistenten hat, finde ich es einfacher, ein vorhandenes Repository zu klonen und von dort aus zu arbeiten. Es steht Ihnen frei, den Assistenten zu verwenden, der etwas Ähnliches tut, aber ich denke, wenn Sie dem manuellen Weg folgen, wird Ihnen das helfen, zu verstehen, was wirklich passiert, und es einfacher machen, mit den Tools zu arbeiten. Wir nehmen an, dass wir eine Anwendung in einem bestimmten Ordner haben:

Der Quellordner ist leer und wird der Ort sein, an dem wir die Textdateien für unser lokales Repository speichern. Wir können mit der rechten Maustaste auf einen weißen Bereich im Ordner klicken, um TortoiseGit zu öffnen Kontextmenü und wählen Sie Repository klonen.

Geben Sie im sich öffnenden Dialog die URL ein, die Sie von Ihrem Hosting-Provider erhalten haben:

ACHTUNG

Beachten Sie, dass standardmäßig der Name des Repositorys aus der URL als neuer Verzeichnisordner verwendet wird. Wenn Sie die URL in das Dialogfeld einfügen, füllt TortoiseGit das Verzeichnis automatisch aus. Wenn Ihnen die Standardeinstellung nicht gefällt, können Sie sie an einen Pfad und eine Benennung anpassen, wie Sie möchten. Beachten Sie im Bild, dass das Verzeichnis \Source hat , statt \SampleApplication wie es die Vorgabe wäre.

Sie sollten dann einen Erfolgsdialog erhalten, dass das Repository geklont wurde:

Als Ergebnis des Klonens haben Sie jetzt einen versteckten Ordner namens .git . So verfolgt Git deine Commits und Änderungen in deinem lokalen Repository.

Wir haben jetzt ein funktionierendes lokales Repository, das wir dann zum Speichern unserer Textdateien von Access verwenden können. Wir müssen OASIS-SVN konfigurieren, um davon Gebrauch zu machen.

OASIS-SVN konfigurieren

Wie bereits erwähnt, verfügt OASIS-SVN über einen Assistenten, mit dem wir uns einrichten können, aber wir möchten dies manuell tun, damit Sie mit der Funktionsweise von OASIS-SVN vertraut sind und den Assistenten effektiv nutzen können. Wir beginnen damit, zu den Einstellungen zu gehen Menü auf der Registerkarte OASIS-SVN.

Dies öffnet den Dialog. Im Moment müssen wir nur eine Sache tun; Richten Sie den Quellpfad ein. Im Allgemeinen finde ich es bequemer, einen relativen Pfad anstelle eines absoluten Pfads zu verwenden, also werden wir \Source einfügen wie abgebildet:

Nach dem Einfügen sollten Sie das Kontrollkästchen Immer verwenden> aktivieren :

Dadurch wird der Repository-Ordner relativ und Sie können den Projektordner beliebig verschieben. Aber Vorsicht – wenn Sie die Access-Datei außerhalb dieses Ordners kopieren oder verschieben, kann sie nicht unter Quellcodeverwaltung gehalten werden, da OASIS-SVN dann die .oasis nicht hätte Datei, die OASIS-SVN benötigt. Klicken Sie auf OK, um das Dialogfeld zu schließen und die Änderungen an den Einstellungen zu speichern. Wenn Sie in den Ordner schauen, sehen Sie jetzt die .oasis Datei für Ihre ACCDB-Datei.

Die .oasis Datei ist nur eine XML-Datei, die alle Projekteinstellungen enthält, und sie muss denselben Namen wie die ACCDB-Datei haben, damit OASIS-SVN weiß, dass diese ACCDB-Datei unter Quellcodeverwaltung stehen sollte. Wenn Sie es also gewohnt sind, Ihre ACCDB-Datei umzubenennen, müssen Sie diese Gewohnheit aufgeben. Wenn Ihr bestehender Workflow das Umbenennen von Dateien beinhaltet, finde ich einen praktischen Ansatz, einen festen Namen für die Entwicklungskopie zu verwenden (z. B. SampleApplication Dev.accdb , vielleicht), wenn ich dann den Namen ändern muss, erstelle ich eine Kopie dieser Datei und gebe den richtigen Namen an. Es muss betont werden, dass in der Quellcodeverwaltung das Umbenennen als Mittel zum Verfolgen von Versionen jetzt weniger sinnvoll ist, da Sie in der Lage sein sollten, es aus der Git-Historie neu zu erstellen, anstatt einen Haufen unterschiedlich benannter Kopien zu haben.

Konfigurieren der restlichen Einstellungen

Im vorherigen Schritt haben wir nur die Quelldatei eingerichtet, da wir keine .oasis hatten Datei; Hätten wir andere Änderungen vorgenommen, wurde es möglicherweise nicht gespeichert, aber jetzt haben wir eine erstellt, als Ergebnis der Einstellung des Projektordners, wir können die restlichen Einstellungen überprüfen. Es ist wahrscheinlich eine gute Idee, eine Vorlage .oasis zu verwenden Datei, damit Sie schnell kopieren und von Hand optimieren können, um eine einheitliche Projekteinstellung für Ihre verschiedenen Access-Projekte zu erhalten. Kehren wir zu den Einstellungen zurück Schaltfläche auf der Multifunktionsleiste und beginnen Sie mit der ersten Registerkarte im Dialogfeld.

Bereich "Objekttypen"

Da wir nicht mehr mit ADPs arbeiten und die veralteten Datenzugriffsseiten nicht mehr verwenden, deaktivieren wir diese normalerweise, um die Unordnung im Import/Export-Dialog auf ein Minimum zu reduzieren. Möglicherweise finden Sie es auch praktisch, dass es die automatischen Änderungen automatisch auswählt, was die Verfolgung des Zeitstempels des Objekts erfordert. Beachten Sie jedoch, dass der Zeitstempel des Objekts in Access nicht vollständig zuverlässig ist. Wir werden dies in einem späteren Abschnitt näher besprechen. Das heißt, es ist eine gute Möglichkeit, darauf hinzuweisen, ob Sie möglicherweise vergessen haben, ein verirrtes Objekt zu übertragen.

Bereich "Tabellenoptionen"

Dieser Bereich erfordert einige sorgfältige Überlegungen und hängt von der Art der Projekte ab, mit denen Sie es zu tun haben. Die wichtigste Regel ist, dass Sie die Daten in Ihren Tabellen _nicht_ über den Quellcode kontrollieren wollen. Das macht keinen Sinn, da Daten kein Code sind. Das ist jedoch nicht immer ganz richtig. Zum Beispiel haben wir eine Reihe von Tabellen, die wir als Anwendungskonfigurationsdaten verwenden. Somit sind diese Tabellen gewissermaßen „Code“, da sie beeinflussen, wie die Anwendung funktioniert. Da es sich bei den meisten unserer Projekte um Access-Frontends mit SQL Server-Backends handelt, sind die normalerweise vorhandenen Tabellen hauptsächlich nur Konfigurationstabellen und daher für die Quellcodeverwaltung geeignet. Aber wenn wir Datentabellen hätten, sollten diese wahrscheinlich nicht enthalten sein. Dort finden Sie die Fortgeschrittene Knopf ist praktisch. Wenn Sie darauf klicken, wird dieser Dialog geöffnet:

Indem Sie Daten für alle Tabellen exportieren deaktivieren Kontrollkästchen unten, können Sie dann auswählen, welche Tabellendaten Sie unter Quellcodekontrolle behalten möchten, mit Ausnahme derjenigen, die nur Datentabellen und kein Teil des Anwendungsquellcodes sind.

Wir schließen im Allgemeinen auch keine mit ODBC verknüpften Tabellen ein, da wir normalerweise eine Coderoutine zum erneuten Verknüpfen der Tabellen haben, sodass es für uns nicht sinnvoll ist, sie in der Quellcodeverwaltung zu haben. Es ist jedoch eine gute Idee, die Anwendungskonfigurationstabelle oder vielleicht sogar nur die Definition für die lokale Tabelle zu haben, da wir eine kaputte Anwendung hätten, wenn wir eine Datei aus dem Git-Repository ohne die Definition dieser Tabellen erstellen würden.

Einstellungsbereich

Das haben wir schon einmal gesehen, als wir die .oasis erstellt haben Datei. Nachdem wir die Datei haben, werden wir die restlichen Einstellungen vornehmen. Hier ist unser typisches Setup.

Wie ich eingangs erwähnt habe, könnten Sie möglicherweise Ihre eigene Import/Export-Routine schreiben. Der Wert von OASIS-SVN besteht jedoch darin, dass wir verschiedene Probleme angehen können, die sich aus der Aufbewahrung von Access-Textdateien im Quellcode ergeben. Zum Beispiel könnte eine Access-Textdatei die typischen Felder am Anfang ihrer Datei haben:
Version =21
VersionRequired =20
PublishOption =1
Checksum =-571006847
Begin Form
...
End Form

Diese sind schlecht für die Kontrolle des Quellcodes, weil sie unnötige Änderungen einführen und die Historie von Änderungen verschmutzen können, die keine wirklichen Änderungen sind. Die Prüfsumme kann sich ändern, obwohl Sie möglicherweise nichts am Formular selbst geändert haben. Mit OASIS-SVN können wir diese unnötigen Daten mit der Option Exportierte Dateien bereinigen entfernen :
Version =21
VersionRequired =20
Begin Form
...
End Form

Möglicherweise ist Ihnen ein gelbes Warnsymbol für Berichte aufgefallen. Der Grund, warum es da ist, ist, dass OASIS-SVN auch die Druckerdaten entfernt, was notorisch schlecht für die Quellcodekontrolle ist. Wenn die Berichte den Standarddrucker verwenden, ist dies normalerweise kein Problem. Es ist jedoch nicht ungewöhnlich, Berichte zu erstellen, die von einem bestimmten Drucker abhängig sind. Vielleicht haben wir zum Beispiel einen Bericht, der Barcode-Etiketten auf einem spezialisierten Drucker erstellt. In diesem Bericht haben wir einen bestimmten Drucker und keinen Standarddrucker ausgewählt. Das Aktivieren dieses Kontrollkästchens für Berichte bedeutet, dass die Druckerdaten weggeblasen werden. Wenn Ihr Projekt nicht von bestimmten Druckereinstellungen abhängt, finden Sie es möglicherweise einfacher, die Berichte abzuhaken. Ansonsten gibt es keinen Grund, es bei Formularen nicht abzuhaken.

Aus ähnlichen Gründen lieben wir geteilte Formulardateien und Split Reports-Dateien Option geprüft. Normalerweise Application.SaveAsText exportiert eine einzelne Textdatei für ein einzelnes Access-Objekt. Wenn Sie jedoch die Textdatei gelesen haben, werden Sie feststellen, dass der Layoutcode … mühsam zu lesen sein kann. Wenn Sie diese Option aktivieren, erhalten wir 2 Textdateien pro Access-Objekt. eine, die alle Layoutdaten enthält, und die andere den eigentlichen VBA-Quellcode hinter dem Formular. Das macht die Codeüberprüfung viel einfacher, da Sie sich auf die VBA-Änderungen konzentrieren und verstehen können, was sich geändert hat, was es einfacher macht, zu verstehen, worum es bei der Layoutänderung geht.

Sie erinnern sich vielleicht noch aus dem vorherigen Abschnitt über Objekttypen Im Fensterbereich haben wir die Änderung ausgewählt, was erfordert, dass wir das Datum/die Uhrzeit des Objekts als Dateidatum/-uhrzeit speichern. Auch das wird hier abgehakt. Es ist erwähnenswert, dass Access den Zeitstempel beim Ändern der Objekte nicht immer zuverlässig stempelt. Wir werden dies in einem späteren Abschnitt über das Erstellen von Commits noch einmal besprechen.

Integrationsbereich

Normalerweise möchten wir sicherstellen, dass die Autokorrektur immer ausgeschaltet ist, aber wichtiger ist die Option, Strg + S als Hokey für einen Export zu verwenden. Das ist sehr sehr hilfreich und vermeidet das Problem mit dem Zeitstempel des Access-Objekts. Dies erfordert jedoch Disziplin, die Tastenkombination konsequent zu verwenden, um die Änderungen zu speichern. Immer wenn Sie die Tastatur ausführen, sehen Sie kurz diesen Dialog:

Dadurch wird sichergestellt, dass Ihr Git-Arbeitsbaum so eng mit Ihrer ACCDB-Arbeitsdatei synchronisiert bleibt, während Sie die Änderungen durcharbeiten. Es ist wichtig zu betonen, dass Sie sich nicht scheuen müssen, häufig zu speichern – es muss nicht bedeuten, dass Sie jedes Speichern festschreiben müssen, aber durch häufiges Speichern wird Ihr Arbeitsbaum das Ausmaß Ihrer Änderungen genau widerspiegeln, wenn Sie es tun sind bereit, sich zu engagieren. Wir werden das im Detail in einem späteren Abschnitt besprechen.

Automatisches UPDATE vor dem Import und Automatisches COMMIT nach dem Export mag wie eine bequeme Sache erscheinen, aber in der Praxis haben wir festgestellt, dass es viel besser ist, dies manuell zu tun, insbesondere wenn wir mit der Tastenkombination Strg + S exportieren, da wir uns nicht unbedingt festlegen möchten; Speichern Sie nur unsere laufenden Arbeiten, damit wir wissen, was sich geändert hat, wenn wir tatsächlich bereit sind, sie zu übernehmen. Aus diesem Grund lassen wir sie weg.

.oasis Einstellungsdatei

Sobald Sie im Einstellungsdialog auf OK klicken, werden die Änderungen, die Sie in verschiedenen Bereichen vorgenommen haben, in die .oasis geschrieben Datei im XML-Format. Wie bereits erwähnt, können Sie es kopieren und eine Vorlage erstellen, damit Sie schnell eine andere Access-Anwendung konfigurieren können. Wir sind jetzt bereit, eine echte Quellcodekontrolle durchzuführen.

Exportieren und übergeben

Da wir, wie bereits erwähnt, mit einer Binärdatei arbeiten, müssen wir alles in eine Textdarstellung exportieren, damit sie von der Quellcodeverwaltung ordnungsgemäß verwaltet werden können. Dazu müssen wir die Objekte exportieren. Sie können die OASIS-SVN-Exportschaltfläche wie angegeben verwenden.

Sie erhalten einen Dialog mit allen zum Export aufgelisteten Objekttypen. Da dies unser erster Export ist, verwenden wir Strg + A um alle für den Export auszuwählen.

Klicken Sie auf OK, um den Export abzuschließen. Wenn alles gut geht, erhalten Sie eine entsprechende Meldung.

Wenn Sie in den Quellordner schauen, sehen Sie alle Textdateien, die verschiedene Objekte darstellen, die Sie gerade exportiert haben. Beachten Sie, dass die Namenskonvention unterschiedlich sein kann, je nachdem, was Sie im Bereich Einstellungen ausgewählt haben, wie im vorherigen Abschnitt gezeigt. Auch weil wir uns entschieden haben, Dateien aufzuteilen, haben wir beide eine .def und ein .layout Datei für ein einzelnes Access-Objekt.

Nachdem die Objekte als Textdateien exportiert wurden, müssen wir nun unsere Änderungen festschreiben. OASIS-SVN stellt die TortoiseGit-Befehle wie gezeigt direkt aus Access bereit.

Typischerweise werden die 4 Befehle, die Sie verwenden möchten, hier gezeigt – die anderen Befehle sind gut zu verwenden, aber wir brauchen uns darüber keine Gedanken zu machen, bis wir zu komplexeren Git-Szenarien kommen. Übrigens sind diese Befehle tatsächlich die gleichen Befehle, die TortoiseGit über das Kontextmenü des Windows-Explorers verfügbar macht:

Darüber hinaus ist eine Teilmenge von Befehlen über das Rechtsklickmenü im Zugriffsnavigationsbereich verfügbar:

Daher haben Sie mehrere Möglichkeiten, entweder mit OASIS-SVN oder mit TortoiseGit direkt aus Access heraus zu arbeiten, oder Sie können TortotiseGit einfach direkt aus dem Windows-Explorer verwenden. Beachten Sie, dass Sie Commit haben in allen Screenshots; was unser nächster Schritt sein wird. Wenn Sie es auswählen, wird ein TortoiseGit-Dialogfeld geöffnet:

Sie werden normalerweise alle auswählen wollen. Beachten Sie, dass nur die Textdateien verfolgt werden, die wir im Projektordner abgelegt haben. Dieser Punkt ist es wert, betont zu werden; Wenn Sie ein Objekt nicht aus Access exportiert haben, kann Git unmöglich davon wissen. Sie müssen eine beschreibende Commit-Nachricht bereitstellen; je ausführlicher desto besser. Wir ziehen es auch vor, mehrere kleine Commits zu machen, weil so die Historie leichter nachzuvollziehen ist. Sie möchten nicht einmal pro Woche einen Commit mit 1000 Änderungen durchführen; das wäre unmöglich zu verstehen. Sie möchten einen Commit, nachdem Sie eine Aufgabe abgeschlossen haben (z. B. das Beheben eines bestimmten Fehlers oder das Einführen einer Funktion), damit Ihr Verlauf leicht verständlich ist.

Wenn Sie sich daran gewöhnen, Ihre Arbeit zu übergeben, möchten Sie vielleicht beachten, dass TortoiseGit Ihnen 3 Optionen zum Festschreiben bietet:

Neu binden ist nützlich, wenn Sie mehrere Festschreibungen vornehmen müssen, weil Sie 2 oder mehr Aufgaben erledigt haben und die Festschreibung für jede Aufgabe trennen möchten. Es ist wahrscheinlich am besten, dies nicht tun zu müssen und zu übertragen, sobald Sie eine Aufgabe abgeschlossen haben, aber wenn Sie von der Aufregung eingeholt werden, überprüfen Sie einfach nur eine Teilmenge der Dateien, die Sie übertragen möchten, und klicken Sie auf erneut festschreiben. TortoiseGit wird nur diese Teilmenge von Dateien festschreiben und dann den Festschreibungsdialog zurücksetzen, damit Sie die andere(n) Teilmenge(n) von Dateien mit einer separaten Nachricht festschreiben können.

Commit &Push wird oft verwendet, um Commit und Push zu kombinieren. Es ist wichtig, sich daran zu erinnern, dass Commits nur in Ihr lokales Git-Repository schreiben. Aber wir begannen mit einem Remote-Repository. Sie können Ihre Codeänderungen nicht mit Ihren Kollegen teilen oder ein Remote-Backup Ihrer Arbeit erstellen, bis Sie Ihre lokalen Commits auf den Server übertragen haben, und genau dafür ist Push gedacht. Wir werden dies später im Detail besprechen.

Wenn Sie sich verpflichten, wird TortoiseGit Ihnen einen Fortschrittsdialog anzeigen und Sie benachrichtigen, wenn es erfolgreich war.

Abschluss

Bisher haben Sie gelernt, wie Sie ein Git-Repository einrichten, OASIS konfigurieren und Ihren ersten Commit durchführen. Allerdings kratzt das kaum an der Oberfläche. Die volle Leistungsfähigkeit von Git wird erst deutlich, wenn Sie sich mit dem Verzweigen befassen, die Historie lesen und die Konflikte lösen. Allerdings sind das reine Git-Sachen und haben weniger mit Access oder OASIS zu tun; Jede allgemeine Git-Anleitung, die wir bereits am Anfang des Artikels verlinkt haben, wird sehr hilfreich sein, um zu verstehen, wie man ein Git-Repository verwaltet. Es lohnt sich, daran zu erinnern, dass TortoiseGit nur ein dünner GUI-Wrapper für Git-Befehle ist. Selbst wenn das Tutorial von der Verwendung einer Bash-Shell spricht, sollten Sie in der Lage sein, dasselbe über das gleichnamige TortoiseGit-Menü zu tun. Habe Fragen? Fragen Sie in den Kommentaren nach!