Frage

Wenn zum SVN commiting kann ich ein Top-Level in dem Detail Commitnachricht was begangen wird, aber ich würde im Idealfall wie ein Mittel auf den einzelnen Dateien kommentieren und was in sie verändert hat. Ich habe etwas ähnliches in früheren Beschäftigung gesehen, aber das wurde mit CVS (und ich kann mich nicht erinnern, ob dies mit einem Homebrew Skript erreicht wurde die Skelett-Datei erstellen)

Ich habe einen Blick auf Änderungslisten habe aber auch hier glaube ich nicht (obwohl ich bereit bin, falsch zu beweisen), dass dies die Art von Granularität gibt, wie unten beschrieben.

Im Idealfall suche ich nach etwas entlang den Linien von:

Foo.vb

  
      
  • Zusätzliche neue Funktionsleiste
  •   

Bar.vb

  
      
  • Entfernte Funktion foo
  •   
  • Zusätzliche Funktionalität in xyz zu tun abc   +/- Modifizierte Funktion Fehler zu protokollieren
  •   
War es hilfreich?

Lösung

ich tun würde dies nur in dem einzelnen Commit-Nachricht. TortoiseSVN hat Dateiname Auto-Vervollständigung, damit stark in diese unterstützt.

Eine andere Sache, die Sie ist svn st tun könnte, bevor Sie zu begehen und copy / paste die Dateinamen in die Commit-Nachricht.

Oh, und sicher sein, wird der Wert dieser stark in Frage zu stellen. Ich weiß, dass einige OSS-Projekte (Linux?) Erfordern diese Art von Treue, sondern auch für viele Projekte ist dies nur Lärm. Diff können Sie viel mehr als das sagen, und genauer.

Eine andere Sache, die Sie betrachten wünschen können verwendet Git . Git können Sie vor Ort begehen, in kleineren Schritten. Sie drücken dann auf den Master-Server alle Ihre Commits einzeln oder zerquetscht zu einem einzigen begehen w / die alle Commit-Nachrichten in einer einzigen Nachricht. Das war eine Art und Weise vereinfachte Erklärung, aber es ist wahrscheinlich wert.

Andere Tipps

Sie könnten nur verpflichten, wenn Sie mit einer bestimmten Aufgabe fertig sind. Das sollte auf jeden Fall zu einem besseren Kommentaren führen. Ein Kommentar Lesung „Implementiert E-Mail verification“ auf den drei Dateien erforderlich sagt mir viel mehr als „Zusatzfunktion verify_email“. Ich kann das letztere selbst im diff sehen.

Einer der wesentlichen Unterschiede zwischen SVN und CVS ist, dass Änderungen atomar begangen werden. In CVS jede Datei hat seine eigene Version, aber in SVN die Version für das gesamte Projekt und enthält alle Dateien in gemeinsam geprüft.

Hier sind vier Ideen für eine Lösung:

  1. Überprüfen Sie in jedem Ihrer Programme separat mit einer eigenen Protokollmeldung. Dies kann bedeuten, dass, wenn, sagen wir, Sie in fünf Dateien überprüfen, werden Sie „aufbrauchen“ fünf Versionen, von denen vier in einem gebrochenen Build führen kann.
  2. Sie Ihre Entwicklung auf einem separaten Weg (das heißt Ihrem eigenen Zweig), gehen Sie wie oben, dann an strategisch wichtigen Momenten verschmelzen Ihre Branche an den Stamm.
  3. Überprüfen Sie in alles zusammen, und halten Sie die einzelnen Datensätze als Kommentare im Programmkopf. Dies kann bedeuten, (ein wenig) zusätzliche Arbeit, aber Sie würden die einzelnen Login-Nachrichten ohnehin komponieren müssen.
  4. Führen Sie eine einzelne checkin für alle Dateien, aber mit einer schönen Nachricht vollständiges Protokoll jedes Stück für jede Datei Detaillierung.

Ich habe ein Projekt zu tun, diese Art von Sache MOAP

Eine seiner Funktionen ist ein ChangeLog Eintrag aus dem lokalen diff zu generieren (derzeit unterstützt Basar, cvs, SVN, Git und darcs). Sie tun dies, ‚moap Changelog vorbereiten‘ oder ‚moap cl prep‘ Das Eintrag, indem Sie kann Funktionen umfassen geändert und wenn Sie die Option zu aktivieren.

Sie dann gehen und den Eintrag ändern, beschreibt die Änderungen. Sie können Dateien entfernen wollen Sie nicht als Teil Ihrer nächsten begangen begehen.

Dann können Sie ‚moap Changelog begehen‘ ausführen, um die Änderungen im Changelog-Eintrag beschrieben zu begehen. Es werden nur die Dateien begehen dort aufgeführt sind, und lassen Sie alle anderen Änderungen lokal.

Ich hoffe, das hilft!

Diese Art von Ergebnis erhalten werden könnte, wenn es einige Regeln in Bezug auf die Art und Weise Kommentare in jedem der engagierten Dateien geschrieben werden. Diese Kommentare können danach durch einen SVN-Trigger extrahiert werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top