Autor Thema: Team Development - Versionskontrolle - GIT  (Gelesen 3896 mal)

Offline Andrew Harder

  • Senior Mitglied
  • ****
  • Beiträge: 295
  • Geschlecht: Männlich
Team Development - Versionskontrolle - GIT
« am: 23.11.12 - 14:53:34 »
Hallo,

Gestern habe ich die Zeit gefunden das im Designer 8.5.3 hinzugekommene 'Team Development' auszuprobieren.
Ich habe mich hierbei für GIT entschieden. Benutzt habe ich die grafische Benutzeroberfläche die mitgeliefert wurde.

Betriebssystem: Windows 8 Prof.
Designer: 8.5.3 (ohne Fixpacks)
GIT: Git-1.8.0-preview20121022.exe

Meine anfängliche Begeisterung ist aufgrund einiger Dinge aber in Entsetzen umgeschlagen.

Ersten Master erstellt, eine Änderung in einem Script Agenten erstellt und im grafischen Benutzertool wollte ich mit die Änderungen ansehen die ich gemacht hatte.
1. Kein Update in den lokalene Dateien, Google bemüht, doch welche Einstellung in den Prefences genau ich da machen soll ist mir ein Rätsel.
Sei es drum, halt manuell im Kontextmenue des Designers upgedatet.
2. Änderungen angesehen. Alles drinne... ausser halt der Quelltext... Wie soll ich da Änderungen später nachvollziehen können?
3. Nächste Änderung gemacht. Die Änderung zur übertragung markiert und mit einem Kommentar übertragen. Dannach im Baum auf den vorherigen Stand zurückgestellt. Klappt in GIT. Den Designer juckt das aber überhaupt nicht, da kann ich snycen bis zum jüngsten Tag.

Habe ich da etwas falsch verstanden, bin ich da irgendeinem Bug aufgesessen, fehlt mir ein Plugin damit das funktioniert, oder ist das ganze von IBM nur als Designstudie vorgesehen?
Andy

Offline pram

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.170
  • Geschlecht: Männlich
    • Foconis Object Framework
Re: Team Development - Versionskontrolle - GIT
« Antwort #1 am: 23.11.12 - 18:50:41 »
Ich verwende SVN (allerdings ohne Plugins)
Habe dazu ein "on disk project" eingerichtet.
Damit sich die Änderungen automatisch syncronisieren, muss unter Preferences -> Domino Designer -> Source Control die entsprechenden Haken setzen.

Ich muss dazu sagen, für mich dient das eher der Code-Review, als Versionskontrolle kann man das Ganze eher schlecht gebrauchen, weil:
- Es werden m.E. zu viele unnütze Metadaten übertragen (lastModified-Infos)
-> Nach einem Recompile hat sich in praktisch JEDER Datei der lastmodified-by Wert geändert
- Ein Sync from Disk to NSF endet je nach Gestaltungselement oft in einem Chaos (DXL ist nicht 100%ig round trip fähig, Ansichten sind relativ problemlos, bei Masken/Teilmasken gehen manchmal diverse Formatierungen etc. verloren, teilweise ganze Events in Buttons/Hotspots, bei Gliederungen geht der Zustand (auf/zugeklappt) verloren)
- Script-Libraries werden (gottseidank) als ".lss" und ".metadata" exportiert. Die ".metadata" enthalten die sich dauernd ändernden Timestamps, so dass man durch svn-igonore:*.metadata zumindest im Code-Bereich wirklich nur die Änderungen mitbekommt, die auch tatsächlich Änderungen am Code sind.

Ich vergleiche deshalb eigentlich nur die Lotusscript-Änderungen bei der Entwicklung.
Den Check-In erledige ich mit Tortoise-SVN, hier kann man durch Editieren der On-Disk Lotusscript-Files (andere fasse ich aus o.g. Gründen nicht an) auch Änderungen wieder rückgängig machen, diese importiert der Designer dann auch wieder.

Bei XPages mag die Sache vielleicht wieder anders aussehen, da hier überwiegend XML bzw. normale Textdateien das Design beschreiben

Gruß
Roland
Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework

Offline Andrew Harder

  • Senior Mitglied
  • ****
  • Beiträge: 295
  • Geschlecht: Männlich
Re: Team Development - Versionskontrolle - GIT
« Antwort #2 am: 23.11.12 - 21:04:23 »
Danke für Deine Antwort, jetzt sehe ich einiges wieder klarer.

Source Control: Alle 4 Optionen sind bereits angehakt.
Der Hinweis mit den LSS war aber super.

Bei den LSS Dateien sehe ich die Änderungen und Rückgängig machen geht auch!
Dies scheint einer der Teile zu sein wo das ganze funktioniert.

Mit Notes 9 wird alles besser ;)
Andy

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Team Development - Versionskontrolle - GIT
« Antwort #3 am: 24.11.12 - 05:51:43 »
Auf diesem Blog scheinen einige interessante Informationen zu stehen:
http://jinoch.cz/

Ich selbst stell auf git um, hab jahrelang svn benutzt und das ist auf der Arbeit immer noch.
Lern das erstmal auf der Kommando-Zeile bevor ich die gute Eclipse und Netbeans Integration benutze.
Auch gestützt mit dem Buch mit den Segelbooten auf dem Cover bei Amazon, muss man aber nicht. Ich bin so.

Das Konzept IST besser als svn. Allein schon, dass es nicht diese nervenden svn directories auf den Client verteilt. Git errechnet sich hashes aus den Dateien und vergleicht so.

Mit dem nicht 100% roundtripfähigen dxl bleibt natürlich, aber das läßt sich möglicherweise eingrenzen.
 
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: Team Development - Versionskontrolle - GIT
« Antwort #4 am: 24.11.12 - 07:36:49 »
Im Unternehmen setzen wir SVN ein. Und das wird auch so bleiben. Wir haben Tonnen von C/C++ Code, der über Jahre hinweg gewachsen ist und der in SVN verwaltet wird.

Als Client setze ich Tortoise ein. Ich brauche diesen One-Klick Blödsinn nicht so unbedingt und kann daher auf ein funktionierendes Plugin für die Anbindung des DDE an SVN gut und gerne verzichten.

Zitat
Ersten Master erstellt, eine Änderung in einem Script Agenten erstellt und im grafischen Benutzertool wollte ich mit die Änderungen ansehen die ich gemacht hatte.
Bei Agenten verfahren wir grundsätzlich so, daß der einzige scriptcode im Agenten der Aufruf einer init() methode in einer ScriptLib ist. Daher brauche ich mich um die Versionierung von Agenten nicht zu kümmern. Und den Code in ScriptLibs kann ich gut auch mit SVN / Tortoise vergleichen.

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Team Development - Versionskontrolle - GIT
« Antwort #5 am: 24.11.12 - 10:10:55 »
Wer Subversion hat, besitzt einen Grund nicht Git einzusetzen, weil er schon ein gutes System hat.
Wer kein Versionierungs-System hat, sollte sich aus meiner Sicht erstmal mit git auseinandersetzen, weil es ein sehr gutes System ist. Es setzt sich immer mehr durch und das hat klare Gründe. 

Für git gibts genauso ein Tortoise.

just for the record
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz