{"id":55001502,"date":"2024-06-01T00:00:00","date_gmt":"2024-06-02T21:21:00","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=1502"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Datenbanken_vergleichen_mit_GitHub_Desktop","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/","title":{"rendered":"Datenbanken vergleichen mit GitHub Desktop"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8\" width=\"1\" height=\"1\" alt=\"\"><b>Im Beitrag &#8222;Access-Quellcodeverwaltung mit GitHub Desktop&#8220; (www.access-im-unternehmen.de\/15) haben wir gezeigt, wie man mit dem Tool &#8222;Version Control Add-In&#8220; und mit &#8222;GitHub Desktop&#8220; den Inhalt einer Access-Anwendung in Form verschiedener Textdateien in ein externes Verzeichnis extrahieren und davon verschiedene Versionen verwalten und wiederherstellen k&ouml;nnen. Im vorliegenden Beitrag wollen wir uns nun einen speziellen Einsatzzweck der Kombination dieser beiden Tools ansehen. Angenommen, wir legen regelm&auml;&szlig;ig Backups unserer Anwendung an. Bei einer neuen Version treten pl&ouml;tzlich Fehler auf, die auf die &Auml;nderungen seit dem letzten Backup zur&uuml;ckzuf&uuml;hren sind. Um einzugrenzen, welche &Auml;nderungen das Problem ausl&ouml;sen, k&ouml;nnen wir nun die Elemente der &auml;lteren Version exportieren, in ein Repository aufnehmen und als Zwischenstand speichern und dann die aktuelle Version ebenfalls in das Repository schreiben. Dort k&ouml;nnen wir nun genau anzeigen lassen, welche Unterschiede zwischen den beiden Versionen existieren und dort nach der Ursache f&uuml;r das Problem suchen.<\/b><\/p>\n<h2>Anwendungsbeispiel: Unterschiede zwischen zwei Versionen einer Datenbank ermitteln<\/h2>\n<p>Im Beitrag <b>Access-Quellcodeverwaltung mit GitHub Desktop <\/b>(<b>www.access-im-unternehmen.de\/15<\/b>) haben wir die beiden Tools <b>Version Control Add-In <\/b>und <b>GitHub Desktop <\/b>vorgestellt. Damit k&ouml;nnen wir aus einer Access-Datenbank alle enthaltenen Elemente exportieren und wiederherstellen (<b>Version Control Add-In<\/b>) oder auch die jeweils exportierten Dateien mit einem Versionsverwaltungssystem verwalten (<b>GitHub Desktop<\/b>).<\/p>\n<p>Um das Beispiel dieses Beitrags nachvollziehen zu k&ouml;nnen, m&uuml;ssen die beiden oben erw&auml;hnten Tools wie in dem genannten Beitrag installiert werden.<\/p>\n<p>Auch wenn man dieses Tool nicht zum Versionieren nutzen m&ouml;chte, gibt es doch zumindest einen sehr interessanten Anwendungszweck: Wir k&ouml;nnen damit die Versionsst&auml;nde zweier Versionen der gleichen Datenbank vergleichen.<\/p>\n<p>Stellen wir uns also vor, wir w&uuml;rden regelm&auml;&szlig;ig Sicherungskopien unserer Anwendung anfertigen. Das ist Voraussetzung daf&uuml;r, dass der folgende Plan &uuml;berhaupt funktioniert. Nachdem wir seit dem letzten gespeicherten Backup einige &Auml;nderungen in der Datenbankanwendung durchgef&uuml;hrt haben, funktioniert pl&ouml;tzlich etwas nicht mehr wie gew&uuml;nscht. Dummerweise haben wir viele &Auml;nderungen an verschiedenen Stellen durchgef&uuml;hrt, sodass wir nicht mehr genau wissen, was wir genau ge&auml;ndert haben.<\/p>\n<p>Hier kommen die in diesem Beitrag vorgestellten Techniken ins Spiel. Wir exportieren mit Version Control System alle Elemente der fr&uuml;heren Version, erfassen diese mit der Versionsverwaltung GitHub, exportieren dann alle Elemente der aktuellen Version und lassen uns von GitHub die Unterschiede der beiden Anwendungen anzeigen.<\/p>\n<p>Danach ist es unsere Aufgabe, herauszufinden, welche &Auml;nderung seit dem letzten Update die Probleme verursacht. Das ist gegebenenfalls immer noch Arbeit, aber zumindest wissen wir, an welchen Stellen wir suchen m&uuml;ssen.<\/p>\n<p>Zu Beispielzwecken kopieren wir unsere Beispieldatenbank dazu einmal, sodass wir anschlie&szlig;end eine Datenbank namens <b>BeispielGitHub.accdb <\/b>und eine namens <b>BeispielGitHub &#8211; Kopie.accdb <\/b>vorfinden. Die Kopie &ouml;ffnen wir und &auml;ndern einige Elemente:<\/p>\n<ul>\n<li>Hinzuf&uuml;gen eines Feldes namens <b>EinDrittesFeld <\/b>zur Tabelle <b>tblBeispiel<\/b><\/li>\n<li>Wir f&uuml;gen eine weitere Tabelle hinzu, indem wir die Tabelle <b>tblBeispiel <\/b>kopieren und den Namen in <b>tblBeispiel2 <\/b>&auml;ndern.<\/li>\n<li>Wir &auml;ndern die Datensatzquelle des Formulars <b>frmBeispiel <\/b>in <b>tblBeispiel2 <\/b>und f&uuml;gen noch das neue Feld <b>EinDrittesFeld <\/b>zum Detailbereich hinzu.<\/li>\n<li>Au&szlig;erdem f&uuml;gen wir diesem Formular ein Bild namens <b>add.png<\/b> hinzu, um zu pr&uuml;fen, ob auch &Auml;nderungen an der Tabelle <b>MSysResources <\/b>ber&uuml;cksichtigt werden.<\/li>\n<li>Wir kopieren im Modul <b>mdlBeispiel <\/b>die Prozedur <b>Beispiel <\/b>und f&uuml;gen diese unter dem Namen <b>Beispiel2 <\/b>erneut ein.<\/li>\n<li>Wir f&uuml;gen einen Verweis auf die Bibliothek <b>Microsoft Office 16.0 Object Library <\/b>hinzu.<\/li>\n<li>Wir stellen in den Optionen unter <b>Aktuelle Datenbank <\/b>die Option <b>Formular anzeigen <\/b>auf <b>frmBeispiel <\/b>ein.<\/li>\n<\/ul>\n<p>Das soll zum Testen reichen. Nun f&uuml;hren wir die folgenden Schritte durch:<\/p>\n<ul>\n<li>Wir erstellen einen neuen Ordner namens <b>VergleichAltNeu<\/b>.<\/li>\n<li>Wir kopieren die beiden Datenbankdateien <b>BeispielGitHub.accdb <\/b>und <b>BeispielGitHub &#8211; Kopie.accdb <\/b>in den neuen Ordner.<\/li>\n<li>Wir &ouml;ffnen <b>GitHub Desktop<\/b>.<\/li>\n<li>Hier legen wir mit dem Men&uuml;befehl <b>File|New Repository&#8230; <\/b>ein neues Repository speziell f&uuml;r diesen Zweck an (siehe Bild 1).<\/li>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_032.png\" alt=\"Anlegen eines neuen Repositories\" width=\"424,5589\" height=\"225,5183\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Anlegen eines neuen Repositories<\/span><\/b><\/p>\n<li>Im Dialog <b>Create a new repository <\/b>geben wir einen Namen wie <b>AltNeuRepository <\/b>ein und stellen <b>Local path <\/b>auf das soeben erstellte Verzeichnis <b>VergleichAltNeu <\/b>ein (siehe Bild 2).<\/li>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_033.png\" alt=\"Auswahl des Verzeichnisses\" width=\"424,5589\" height=\"479,2444\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Auswahl des Verzeichnisses<\/span><\/b><\/p>\n<li>Das Verzeichnis mit den beiden Versionen der Datenbank enth&auml;lt nun zus&auml;tzlich einen weiteren Ordner, den GitHub Desktop erstellt hat (siehe Bild 3).<\/li>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_034.png\" alt=\"Aussehen des neuen Verzeichnisses\" width=\"424,5589\" height=\"166,9859\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Aussehen des neuen Verzeichnisses<\/span><\/b><\/p>\n<li>Wechseln wir in diesen Ordner, sehen wir dort einen versteckten Unterordner namens <b>.git <\/b>und eine Datei namens <b>.gitattributes <\/b>(siehe Bild 4).<\/li>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_004.png\" alt=\"Dateien von GitHub Desktop\" width=\"424,5589\" height=\"127,1521\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Dateien von GitHub Desktop<\/span><\/b><\/p>\n<\/ul>\n<p>Nun folgen Schritte, die wir sp&auml;ter im Detail beschreiben:<\/p>\n<ul>\n<li>Exportieren der Elemente der alten Version der Datenbank in den Ordner <b>VergleichAltNeu<\/b>.<\/li>\n<li>Wechsel zu GitHub Desktop, wo wir die nun hinzugef&uuml;gten Elemente als Unterschiede sehen und diese als neuen Commit anlegen.<\/li>\n<li>Exportieren der Elemente der neuen Version der Datenbank in den Ordner <b>VergleichAltNeu<\/b>.<\/li>\n<li>Wechsel zu GitHub Desktop, wo nun die Unterschiede angezeigt werden.<\/li>\n<\/ul>\n<p>Hier k&ouml;nnen wir nun die Unterschiede zwischen den Versionen im Detail ansehen.<\/p>\n<h2>Exportieren der Elemente der alten Version<\/h2>\n<p>Diese Schritte sehen im Detail wie folgt aus. Als Erstes &ouml;ffnen wir die erste Datenbank <b>BeispielGitHub.accdb<\/b>. Hier stellen wir das Zielverzeichnis f&uuml;r den Export der Elemente ein. Dazu klicken wir im Ribbon auf den Befehl <b>View Options <\/b>(siehe Bild 5).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_003.png\" alt=\"&Ouml;ffnen der Optionen\" width=\"699,559\" height=\"182,6087\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 5: &Ouml;ffnen der Optionen<\/span><\/b><\/p>\n<p>Im nun erscheinenden Dialog <b>Options <\/b>wechseln wir zur Registerseite <b>Export <\/b>und stellen dort unter <b>Export Folder <\/b>den Pfad zum Ordner <b>&#8230;\\VergleichAltNeu\\AltNeuRepository <\/b>ein (siehe Bild 6).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_001.png\" alt=\"Einstellen des Zielordners\" width=\"549,559\" height=\"418,2844\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 6: Einstellen des Zielordners<\/span><\/b><\/p>\n<p>Schlie&szlig;lich bet&auml;tigen wir im Ribbon unter <b>Version Control <\/b>den Befehl <b>Export Source Files <\/b>(siehe Bild 7).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_002.png\" alt=\"Exportieren der Elemente\" width=\"424,5589\" height=\"201,2082\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 7: Exportieren der Elemente<\/span><\/b><\/p>\n<p>Dadurch werden die Elemente der Datenbank exportiert. Au&szlig;erdem erhalten wir die Meldung, dass Dateien f&uuml;r die Zusammenarbeit mit GitHub erzeugt wurden (siehe Bild 8).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_005.png\" alt=\"Meldung &uuml;ber das Anlegen von Git-Dateien\" width=\"424,5589\" height=\"221,3512\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 8: Meldung &uuml;ber das Anlegen von Git-Dateien<\/span><\/b><\/p>\n<p>&Uuml;ber das Ergebnis des Exports informiert uns schlie&szlig;lich der Dialog aus Bild 9, der jedoch nach kurzer Zeit automatisch ausgeblendet wird.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_006.png\" alt=\"Ergebnis des Exports\" width=\"524,559\" height=\"389,6484\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 9: Ergebnis des Exports<\/span><\/b><\/p>\n<h2>Elemente in GitHub Desktop &#8222;committen&#8220;<\/h2>\n<p>Wechseln wir nun zu GitHub Desktop, das noch ge&ouml;ffnet sein sollte, sehen wir in der Liste links alle Elemente, die exportiert wurden. Diese werden unter <b>Changes <\/b>aufgef&uuml;hrt, weil vom vorherigen Zustand, wo das Repository komplett leer war, alle neu hinzugef&uuml;gten Dateien als &Auml;nderung interpretiert werden. Auf der rechten Seite finden wir den Inhalt der obersten Datei der Liste (siehe Bild 10).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_007.png\" alt=\"Die exportierten Dateien in GitHub Desktop\" width=\"524,559\" height=\"408,0738\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 10: Die exportierten Dateien in GitHub Desktop<\/span><\/b><\/p>\n<p>Wenn wir nun alle Dateien auf die gleiche Weise aus der neueren Version der Datenbank namens <b>BeispielGitHub &#8211; Kopie.accdb <\/b>auf die gleiche Weise exportieren, hilft uns das nicht viel weiter &#8211; es werden lediglich die aus dieser Datenbank exportierten Dateien &uuml;ber die vorhandenen geschrieben und es landen einige zus&auml;tzliche Dateien durch die neuen Elemente im Verzeichnis.<\/p>\n<p>Auch in GitHub Desktop geschieht nicht viel, hier werden ebenfalls nur die neuen Dateien und die neuen Versionen zus&auml;tzlich angezeigt. Wir erhalten so aber keine M&ouml;glichkeit, die erste Version der Datenbank mit der zweiten Version zu vergleichen.<\/p>\n<p>Wie also machen wir es korrekt? Nach dem Export der Elemente der ersten Datenbank m&uuml;ssen wir die aktuelle Version per <b>Commit <\/b>in der Quellcodeverwaltung als Version festschreiben. Dazu tragen wir unten links in GitHub Desktop die Bezeichnung des zu speichernden Commits und gegebenenfalls noch eine Beschreibung ein (siehe Bild 11).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_008.png\" alt=\"Eintragen von Informationen zu einem Commit\" width=\"499,5589\" height=\"556,5555\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 11: Eintragen von Informationen zu einem Commit<\/span><\/b><\/p>\n<p>Anschlie&szlig;end klicken wir auf <b>Commit to main <\/b>und sollten die Ansicht aus Bild 12 erhalten.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_009.png\" alt=\"Nachdem der Commit durchgef&uuml;hrt wurde, gibt es keine offenen &Auml;nderungen.\" width=\"700\" height=\"335,4166\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 12: Nachdem der Commit durchgef&uuml;hrt wurde, gibt es keine offenen &Auml;nderungen.<\/span><\/b><\/p>\n<h2>Zweite Version der Datenbank ins Repository schreiben<\/h2>\n<p>Nun k&ouml;nnen wir die zweite Datenbank namens <b>BeispielGitHub &#8211; Kopie.accdb<\/b> &ouml;ffnen. In dieser Datenbank &ouml;ffnen wir nochmals die Optionen des <b>Version Control Add-Ins<\/b>.<\/p>\n<p>Dort wechseln wir zur Registerseite Export und pr&uuml;fen, ob dieses auf das gleiche Verzeichnis eingestellt ist wie die Optionen f&uuml;r die Beispieldatenbank <b>BeispielGitHub.accdb <\/b>mit der ersten Version.<\/p>\n<p>Die Elemente sollen als Dateien in das gleiche Verzeichnis geschrieben werden wie die aus der ersten Version der Datenbank.<\/p>\n<p>Wechseln wir danach zu GitHub Desktop, finden wir wie in Bild 13 direkt die ersten &Auml;nderungen vor &#8211; hier der neue Dateiname und die Eigenschaft f&uuml;r das Startformular. Um ein weiteres Beispiel zu nennen: Wenn wir zum Eintrag <b>vbe-references.json <\/b>wechseln, sehen wir den Eintrag f&uuml;r den neu hinzugef&uuml;gten Office-Verweis (siehe Bild 14).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_011.png\" alt=\"&Auml;nderung bei den Verweisen\" width=\"649,559\" height=\"371,0388\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 13: &Auml;nderung bei den Verweisen<\/span><\/b><\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_010.png\" alt=\"&Auml;nderungen bei Dateiname und Startformular\" width=\"649,559\" height=\"499,2728\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 14: &Auml;nderungen bei Dateiname und Startformular<\/span><\/b><\/p>\n<p>Die anderen &Auml;nderungen wie die, die wir im Code oder in den Tabellen und Formularen durchgef&uuml;hrt haben, k&ouml;nnen wir uns auf diese Weise ebenfalls leicht ansehen &#8211; dazu markieren wir einfach die entsprechenden Elemente.<\/p>\n<h2>Zusammenfassung und Ausblick<\/h2>\n<p>Dieser Beitrag zeigt, wie wir die Kombination aus Version Control Add-In und GitHub Desktop nutzen k&ouml;nnen, um die Unterschiede zwischen zwei Versionen einer Datenbankdatei zu ermitteln.<\/p>\n<p>Wenn man wie im eingangs erw&auml;hnten Beitrag grunds&auml;tzlich beim Entwickeln einer Access-Anwendung immer wieder Versionsst&auml;nde in das Repository exportiert und als Commit speichert, braucht man das hier erw&auml;hnte Prozedere gar nicht erst durchzuf&uuml;hren und kann jederzeit die &Auml;nderungen im Vergleich zur jeweils vorherigen Version ansehen.<\/p>\n<p>Dazu wechselt man einfach zum Bereich <b>History <\/b>und w&auml;hlt die Version aus, deren &Auml;nderungen zur vorhergehenden Version man untersuchen m&ouml;chte.<\/p>\n<p>Im rechten Bereich werden dann alle Unterschiede aufgezeigt, die zwischen der aktuellen und der vorherigen Version hinzugekommen sind (siehe Bild 15). Wenn wir in der Liste der Versionen zwei oder mehr aufeinander folgende Eintr&auml;ge markieren, sehen wir die Unterschiede, die in den markierten Versionen als Commit festgeschrieben wurden.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2024_03\/pic_1502_012.png\" alt=\"&Auml;nderungen zwischen der markierten und der vorherigen Version\" width=\"700\" height=\"402,2495\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 15: &Auml;nderungen zwischen der markierten und der vorherigen Version<\/span><\/b><\/p>\n<p>Wie auch schon im oben genannten Beitrag beschrieben, k&ouml;nnen wir jederzeit einen der genannten Commits wiederherstellen. Dazu klicken wir mit der rechten Maustaste auf die jeweilige Version und w&auml;hlen den Befehl <b>Checkout <\/b>aus dem Kontextmen&uuml; aus. Dadurch wird diese Version wieder in das Verzeichnis geschrieben. Wir m&uuml;ssen dann nur noch in Access den Befehl <b>Build from Source <\/b>aufrufen, um diese Version in der Access-Anwendung wiederherzustellen.<\/p>\n<h2>Downloads zu diesem Beitrag<\/h2>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>BeispielGitHub &#8211; Kopie.accdb<\/p>\n<p>BeispielGitHub.accdb<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/50A90ECF-3837-49AF-A545-AED089DA218B\/aiu_1502.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Im Beitrag &#8222;Access-Quellcodeverwaltung mit GitHub Desktop&#8220; (www.access-im-unternehmen.de\/1495) haben wir gezeigt, wir man mit dem Tool &#8222;Version Control Add-In&#8220; und mit &#8222;GitHub Desktop&#8220; den Inhalt einer Access-Anwendung in Form verschiedener Textdateien in ein externes Verzeichnis extrahieren und davon verschiedene Versionen verwalten und wiederherstellen k&ouml;nnen. Im vorliegenden Beitrag wollen wir uns nun einen speziellen Einsatzzweck der Kombination dieser beiden Tools ansehen. Angenommen, wir legen regelm&auml;&szlig;ig Backups unserer Anwendung an. Bei einer neuen Version treten pl&ouml;tzlich Fehler auf, die auf die &Auml;nderungen seit dem letzten Backup zur&uuml;ckzuf&uuml;hren sind. Um einzugrenzen, welche &Auml;nderungen das Problem ausl&ouml;sen, k&ouml;nnen wir nun die Elemente der &auml;lteren Version exportieren, in ein Repository aufnehmen und als Zwischenstand speichern und dann die aktuelle Version ebenfalls in das Repository schreiben. Dort k&ouml;nnen wir nun genau anzeigen lassen, welche Unterschiede zwischen den beiden Versionen existieren und dort nach der Ursache f&uuml;r das Problem suchen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662024,66032024,44000025],"tags":[],"class_list":["post-55001502","post","type-post","status-publish","format-standard","hentry","category-662024","category-66032024","category-VBA_und_Programmiertechniken"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Datenbanken vergleichen mit GitHub Desktop - Access im Unternehmen<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Datenbanken vergleichen mit GitHub Desktop\" \/>\n<meta property=\"og:description\" content=\"Im Beitrag &quot;Access-Quellcodeverwaltung mit GitHub Desktop&quot; (www.access-im-unternehmen.de\/1495) haben wir gezeigt, wir man mit dem Tool &quot;Version Control Add-In&quot; und mit &quot;GitHub Desktop&quot; den Inhalt einer Access-Anwendung in Form verschiedener Textdateien in ein externes Verzeichnis extrahieren und davon verschiedene Versionen verwalten und wiederherstellen k&ouml;nnen. Im vorliegenden Beitrag wollen wir uns nun einen speziellen Einsatzzweck der Kombination dieser beiden Tools ansehen. Angenommen, wir legen regelm&auml;&szlig;ig Backups unserer Anwendung an. Bei einer neuen Version treten pl&ouml;tzlich Fehler auf, die auf die &Auml;nderungen seit dem letzten Backup zur&uuml;ckzuf&uuml;hren sind. Um einzugrenzen, welche &Auml;nderungen das Problem ausl&ouml;sen, k&ouml;nnen wir nun die Elemente der &auml;lteren Version exportieren, in ein Repository aufnehmen und als Zwischenstand speichern und dann die aktuelle Version ebenfalls in das Repository schreiben. Dort k&ouml;nnen wir nun genau anzeigen lassen, welche Unterschiede zwischen den beiden Versionen existieren und dort nach der Ursache f&uuml;r das Problem suchen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-02T21:21:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Minhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Minhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"9\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Datenbanken vergleichen mit GitHub Desktop\",\"datePublished\":\"2024-06-02T21:21:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/\"},\"wordCount\":1747,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg02.met.vgwort.de\\\/na\\\/ca891dfcaf8a48e9a3920215655fb3c8\",\"articleSection\":[\"2024\",\"3\\\/2024\",\"VBA und Programmiertechniken\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/\",\"name\":\"Datenbanken vergleichen mit GitHub Desktop - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg02.met.vgwort.de\\\/na\\\/ca891dfcaf8a48e9a3920215655fb3c8\",\"datePublished\":\"2024-06-02T21:21:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg02.met.vgwort.de\\\/na\\\/ca891dfcaf8a48e9a3920215655fb3c8\",\"contentUrl\":\"http:\\\/\\\/vg02.met.vgwort.de\\\/na\\\/ca891dfcaf8a48e9a3920215655fb3c8\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Datenbanken_vergleichen_mit_GitHub_Desktop\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Datenbanken vergleichen mit GitHub Desktop\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"name\":\"Access im Unternehmen\",\"description\":\"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/access-im-unternehmen.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\",\"name\":\"Andr\u00e9 Minhorst Verlag\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"contentUrl\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"width\":370,\"height\":111,\"caption\":\"Andr\u00e9 Minhorst Verlag\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Datenbanken vergleichen mit GitHub Desktop - Access im Unternehmen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/","og_locale":"de_DE","og_type":"article","og_title":"Datenbanken vergleichen mit GitHub Desktop","og_description":"Im Beitrag \"Access-Quellcodeverwaltung mit GitHub Desktop\" (www.access-im-unternehmen.de\/1495) haben wir gezeigt, wir man mit dem Tool \"Version Control Add-In\" und mit \"GitHub Desktop\" den Inhalt einer Access-Anwendung in Form verschiedener Textdateien in ein externes Verzeichnis extrahieren und davon verschiedene Versionen verwalten und wiederherstellen k&ouml;nnen. Im vorliegenden Beitrag wollen wir uns nun einen speziellen Einsatzzweck der Kombination dieser beiden Tools ansehen. Angenommen, wir legen regelm&auml;&szlig;ig Backups unserer Anwendung an. Bei einer neuen Version treten pl&ouml;tzlich Fehler auf, die auf die &Auml;nderungen seit dem letzten Backup zur&uuml;ckzuf&uuml;hren sind. Um einzugrenzen, welche &Auml;nderungen das Problem ausl&ouml;sen, k&ouml;nnen wir nun die Elemente der &auml;lteren Version exportieren, in ein Repository aufnehmen und als Zwischenstand speichern und dann die aktuelle Version ebenfalls in das Repository schreiben. Dort k&ouml;nnen wir nun genau anzeigen lassen, welche Unterschiede zwischen den beiden Versionen existieren und dort nach der Ursache f&uuml;r das Problem suchen.","og_url":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/","og_site_name":"Access im Unternehmen","article_published_time":"2024-06-02T21:21:00+00:00","og_image":[{"url":"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"9\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Datenbanken vergleichen mit GitHub Desktop","datePublished":"2024-06-02T21:21:00+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/"},"wordCount":1747,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#primaryimage"},"thumbnailUrl":"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8","articleSection":["2024","3\/2024","VBA und Programmiertechniken"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/","url":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/","name":"Datenbanken vergleichen mit GitHub Desktop - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#primaryimage"},"thumbnailUrl":"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8","datePublished":"2024-06-02T21:21:00+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#primaryimage","url":"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8","contentUrl":"http:\/\/vg02.met.vgwort.de\/na\/ca891dfcaf8a48e9a3920215655fb3c8"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Datenbanken_vergleichen_mit_GitHub_Desktop\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Datenbanken vergleichen mit GitHub Desktop"}]},{"@type":"WebSite","@id":"https:\/\/access-im-unternehmen.de\/#website","url":"https:\/\/access-im-unternehmen.de\/","name":"Access im Unternehmen","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access","publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/access-im-unternehmen.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/access-im-unternehmen.de\/#organization","name":"Andr\u00e9 Minhorst Verlag","url":"https:\/\/access-im-unternehmen.de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/","url":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","contentUrl":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","width":370,"height":111,"caption":"Andr\u00e9 Minhorst Verlag"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","caption":"Andr\u00e9 Minhorst"}}]}},"_links":{"self":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001502","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/comments?post=55001502"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001502\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55001502"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55001502"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55001502"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}