LabVIEWForum.de - Versionsverwaltung Tortoise GIT mit LabVIEW nutzen

LabVIEWForum.de

Normale Version: Versionsverwaltung Tortoise GIT mit LabVIEW nutzen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich möchte meine LabVIEW - Programme lokal mit tortoise GIT verwalten. Wie ich tortoise GIT und LAbVIEW miteinander kombiniere (also von der reinen Software her) weiss ich durch die Anleitung des folgenden Link:

https://www.labviewhacker.com/doku.php?i...ng_started

Mein Problem ist jetzt, dass ich nicht weiß wie ich ein VI in ein REPOSITORY implementiere und dann über "Werkzeuge --> Versionsverwaltung --> Einstellungen..." die Funktionen für den CheckIn und CheckOUT usw. nutzen kann.

Hoffe jemand hier im Forum hat sich schonmal damit auseinandergesetzt und versteht meine Frage dahingehend, mir eine hilfreiche Antwort oder gar Anleitung zu leifern.

Schonmal Vielen Dank für die Mühen.

Mit besten Grüßen

NEWBIE14
(07.11.2014 11:16 )NEWBIE14 schrieb: [ -> ]Hallo zusammen,

ich möchte meine LabVIEW - Programme lokal mit tortoise GIT verwalten. Wie ich tortoise GIT und LAbVIEW miteinander kombiniere (also von der reinen Software her) weiss ich durch die Anleitung des folgenden Link:

https://www.labviewhacker.com/doku.php?i...ng_started

Mein Problem ist jetzt, dass ich nicht weiß wie ich ein VI in ein REPOSITORY implementiere und dann über "Werkzeuge --> Versionsverwaltung --> Einstellungen..." die Funktionen für den CheckIn und CheckOUT usw. nutzen kann.

Hoffe jemand hier im Forum hat sich schonmal damit auseinandergesetzt und versteht meine Frage dahingehend, mir eine hilfreiche Antwort oder gar Anleitung zu leifern.

Schonmal Vielen Dank für die Mühen.

Mit besten Grüßen

NEWBIE14

Du willst also Tortoise Git von der integrierten Versionsverwaltungschnittstelle in LabVIEW aus direkt ansprechen? Das geht zwar aber nicht ohne etwas Mühe. LabVIEW selber weiss absolut gar nichts darüber wie GIT, SVN, Hg, Perforce, und was noch mehr funktioniert. Darum haben sie bei NI ein Interface eingebaut das es ermöglicht sogenannte Provider zu installieren die die LabVIEW Aktionen in die jeweiligen Kommandos für das gewünschte Versionsbeheersystem umsetzt. Diese Provider bestehen für Perforce von NI selber (da sie es selber intern auch nutzen), und für SVN und Hg durch Community Projekte. GIT besteht meines Wissens noch nicht.

Natürlich kannst Du Dir einmal den Hg Provider von Ton Plomp downloaden und untersuchen und darauf aufbauend Deinen eigenen Git Provider basteln.

Aber ich muss dazu gleich sagen dass ich selber zwar mit SVN arbeite und es gibt dafür mindestens 2 LabVIEW Provider Interfaces aber alle SVN related Operationen mache ich doch immer von TortoiseSVN aus. Das hat mehrere Gründe:
1) Das LabVIEW Provider Interface geht von einem Locking Mechanismus aus (checkIn/CheckOut). SVN unterstützt das zwar auch aber der übliche Workflow wenn man nicht mit vielen Leuten zugleich am selben Code bastelt ist, dass man seine Änderungen ohne Locking lokal macht und diese dann einfach zurück ins Repository pusht. Bei Hg spielt dies sogar noch mehr, da Locking/Unlocking bei distributed VCS nicht mehr praktisch zu implementieren ist.

2) Das Provider Interface in LabVIEW ist recht beschränkt und gibt wesentlich weniger visuellen Feedback über den Status von Files dann TortoiseSVN (und wohl sicher auch Hg)
(09.11.2014 12:20 )rolfk schrieb: [ -> ]
(07.11.2014 11:16 )NEWBIE14 schrieb: [ -> ]Hallo zusammen,

ich möchte meine LabVIEW - Programme lokal mit tortoise GIT verwalten. Wie ich tortoise GIT und LAbVIEW miteinander kombiniere (also von der reinen Software her) weiss ich durch die Anleitung des folgenden Link:

https://www.labviewhacker.com/doku.php?i...ng_started

Mein Problem ist jetzt, dass ich nicht weiß wie ich ein VI in ein REPOSITORY implementiere und dann über "Werkzeuge --> Versionsverwaltung --> Einstellungen..." die Funktionen für den CheckIn und CheckOUT usw. nutzen kann.

Hoffe jemand hier im Forum hat sich schonmal damit auseinandergesetzt und versteht meine Frage dahingehend, mir eine hilfreiche Antwort oder gar Anleitung zu leifern.

Schonmal Vielen Dank für die Mühen.

Mit besten Grüßen

NEWBIE14

Du willst also Tortoise Git von der integrierten Versionsverwaltungschnittstelle in LabVIEW aus direkt ansprechen? Das geht zwar aber nicht ohne etwas Mühe. LabVIEW selber weiss absolut gar nichts darüber wie GIT, SVN, Hg, Perforce, und was noch mehr funktioniert. Darum haben sie bei NI ein Interface eingebaut das es ermöglicht sogenannte Provider zu installieren die die LabVIEW Aktionen in die jeweiligen Kommandos für das gewünschte Versionsbeheersystem umsetzt. Diese Provider bestehen für Perforce von NI selber (da sie es selber intern auch nutzen), und für SVN und Hg durch Community Projekte. GIT besteht meines Wissens noch nicht.

Natürlich kannst Du Dir einmal den Hg Provider von Ton Plomp downloaden und untersuchen und darauf aufbauend Deinen eigenen Git Provider basteln.

Aber ich muss dazu gleich sagen dass ich selber zwar mit SVN arbeite und es gibt dafür mindestens 2 LabVIEW Provider Interfaces aber alle SVN related Operationen mache ich doch immer von TortoiseSVN aus. Das hat mehrere Gründe:
1) Das LabVIEW Provider Interface geht von einem Locking Mechanismus aus (checkIn/CheckOut). SVN unterstützt das zwar auch aber der übliche Workflow wenn man nicht mit vielen Leuten zugleich am selben Code bastelt ist, dass man seine Änderungen ohne Locking lokal macht und diese dann einfach zurück ins Repository pusht. Bei Hg spielt dies sogar noch mehr, da Locking/Unlocking bei distributed VCS nicht mehr praktisch zu implementieren ist.

2) Das Provider Interface in LabVIEW ist recht beschränkt und gibt wesentlich weniger visuellen Feedback über den Status von Files dann TortoiseSVN (und wohl sicher auch Hg)

Hallo,

vielen Dank für die ausführliche Antwort. Es scheint mir als hättest du auf dem Gebiet der Versionsverwaltung sehr gute Kenntnisse. Leider ist die Antwort nicht das was ich mir erhofft habe zu erhalten. Big Grin Da meine alleinige Aufbage nicht darin besteht nur LabVIEW mit GIT zu vereinen denke ich, dass dieser Weg zu aufwendig ist. Zumal ich auch der einzige bin, der in unserer Firma damit arbeitet. Kannst du mir denn evtl kurz erklären wie man Tortoise GIT ein Programm "händisch" ins repository ein und aus checkt? Hoffe die Frage ist nicht allzu dumm?!

Bzgl. Perkforce: Wenn ich also Perkforce verwenden würrde dann hieß das, dass es mit diesem Versionsverwaltungsprogramm wesentlich einfacher ist meine LabVIEW-Software zu verwalten?

Gruß

NEWBIE14
...bin auch kein Versionsverfaltungsexperte, sondern "nur" Anwender. Bei eigentlich allen Versionsverwaltungen (also auch Git) gibt es Tools um unter Windows per Rechtsklick Dateien auszuchecken, einzuchecken, zurück zu setzen oder die neueste Version aus dem Repo zu laden. Das funktioniert dann natürlich auch bei der Benutzung mit Labview. (Versionsverwaltung im Explorer, Labviewbenutzung wie gewohnt)

Mit "P4" (Perforce) klappt es ganz gut, diese Dinge direkt in Labview zu machen. Weil man z.B. in dem Moment ans Auschecken erinnert wird wenn man die erste Änderung macht, fällt es relativ leicht das nicht zu vergessen. Ebenso kann man nur dann Einchecken, wenn man eine Beschreibung eingegeben hat. Und weil man das ebenfalls "von Labview aus" macht (und nicht nur einmal am Tagesende), weiß man in der Regel auch noch, was man an welcher Datei geändert hat und es fällt (mir) leichter, sinnvolle Beschreibungen zu tippen.

Einzige Sache die bei mir mit P4 und LV nicht so klappt, ist das automatische vergessen/löschen/aktualisieren von umbenannten Dateien. Solche Leichen lösche ich dann ab und zu von Hand mit den P4-Tools. Vermutlich würde auch RTFM helfen, aber da ist der Leidensdruck noch nicht hoch genug bei mir... ;-)

SVN habe ich nur mal angetestet, das funktionierte mit LV "im Prinzip" ähnlich. Aber mir hat P4 besser gefallen.
Die System-Integration von SVN hat mir dabei besser gefallen, als bei Git. Aber das war von unserem Partner vorgegeben (bei einem nicht-LV-System).
Referenz-URLs