Hi!
Könnt ihr mir ein Tool empfehlen, das ein Verzeichnis überwacht und, sobald ein Benutzer eine Datei hinzufügt/ändert/löscht, einen Eintrag in einer Versionskontrolle erstellt?
Mein Ziel ist, Textdateien (meist sql-skripte, die zu Auswertungszwecken erstellt werden) zu archivieren und die Änderungen an diesen nachvollziehbar zu machen.
Wir haben hier einige Kollegen, die relativ fit in SQL sind, jedoch sicherlich nicht gewissenhaft git/svn bedienen würden. Daher mein Ansatz, sie gar nichts von der im Hintergrund laufenden Versionsverwaltung wissen zu lassen 😉
Das ist doch auch relativ schnell selbst geschrieben. Einfach mit dem FileSystemWatcher das Verzeichnis überwachen und dann per svn/git-Commandline neue/geänderte/... Dateien in die Versionskontrolle aufnehmen.
Problematisch wirds nur wenn dabei mal Konflikte auftreten, dann ist ein User der nichts von Versionskontrolle weiß überfordert 😃
Darth Maim
Ja, stimmt. Mit dem FileSystemWatcher würde ich das hinbekommen. Ich habe damit auch schon gearbeitet.
Ich wollte jedoch vermeiden, das Rad neu zu erfinden und fragte daher, ob es schon ein Tool gibt, das mir diese Arbeit abnimmt. Die grundlegenden Funktionen sind ja nie die Zeitfresser bei der Programmierung - meist sind es die unvorhergesehenen Ausnahmen.
Wissen lassen musst Du sie das schon, da es sonst als Überwachung der Arbeit eingestuft wird und Du damit rechtliche Probleme bekommen kannst; bzw der Chef.
Perforce unterstützt das ganze mit "Reconcile Offline Work" bzw. auch direkt mit Verzeichnisüberwachungen/Triggern, sofern diese im Workspace liegen - muss aber aktiv vom Anwender ausgeführt werden.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Danke für den Hinweis bzgl. der rechtlichen Probleme. Perforce sprengt den Kostenrahmen für meinen Anwendungszweck leider deutlich.
Du koenntest auch mit rsync arbeiten und regelmaessig die Verzeichnisse sichern und versionieren.
Hallo deerhunter,
was spricht denn dagegen, einfach einmal pro Tag/Nacht per "Geplante Aufgaben" einen normalen Check-In der sowieso genutzten Versionsverwaltung laufen zu lassen. Das ist doch sogar besser als ständiger Check-In sofort nach Änderungen, weil dann die Anzahl der Versionen explodiert, wenn jemand eine Datei mehrfach direkt in dem Verzeichnis editiert.
herbivore
@all: Danke für eure Anregungen
@herbivore:
was spricht denn dagegen, einfach einmal pro Tag/Nacht per "Geplante Aufgaben" einen normalen Check-In der sowieso genutzten Versionsverwaltung laufen zu lassen.
Dagegen spricht gar nichts. Dachte nur, dass es vielleicht ein Tool gibt.
Ich werde mir wohl ein Skript schreiben, das mein git-repository automatisch aktualisiert. Die Idee mit dem Task gefällt mir gut.