9 Stimmen

Warum wird $Id$ manchmal in SVN nicht erweitert?

Ich arbeite an einem Projekt, bei dem wir aktiv den von Subversion generierten $Id$-String verwenden, um die Versionsnummer in der Dokumentation zu schreiben. Zum Beispiel analysieren wir diesen String

$Id: filename 999 2009-02-23 22:51:29Z author $

und drucken "999" auf der Titelseite der Dokumentation.

Aber hin und wieder wird nach einem Commit die Information entfernt und wir haben nur noch

$Id$

Dies führt offensichtlich zu Problemen. Weiß jemand, warum das passieren könnte?


Okay, die offensichtliche Antwort war korrekt; svn:keywords waren nicht mehr für diese Datei festgelegt. Aber ich schwöre, dass sie es waren! Irgendeine Idee, wie/warum svn:keywords von einer Datei gelöscht worden sein könnten, ohne dass es jemand bemerkt/hinzu absichtlich gemacht hat?

11voto

Sean Bright Punkte 114347

Die svn:keywords-Eigenschaft ist möglicherweise nicht richtig auf dieser Datei festgelegt. Sie müssen es auf (mindestens) 'Id' setzen:

svn ps svn:keywords 'Id' filename.txt

7voto

Stellen Sie sicher, dass Ihre Datei in UTF-8 und NICHT in Unicode vorliegt. Unicode-Dateien werden von SVN nicht erweitert, da diese nicht als Textdateien angesehen werden... Ich habe Notepad Save As UTF-8 verwendet, um das Problem zu lösen

2voto

Ferdinand Beyer Punkte 61121

Schlüsselwörter werden nur beim Check-out erweitert, wenn die 'svn:keywords'-Eigenschaft definiert ist. Bei der Verwendung von Repository-Browsing-Tools wie ViewSVN sollten sie nicht erweitert werden, d.h. sie werden als $Id$ angezeigt.

2voto

Stewart Robinson Punkte 3239

Die von Ihnen ausgewählte Antwort ist korrekt. Sie könnten zusätzlich in Betracht ziehen, Ihre Auto-Eigenschaften so einzustellen, dass die Schlüsselwort-Eigenschaft automatisch aktiviert wird. Siehe http://svnbook.red-bean.com/de/1.1/ch07s02.html#svn-ch-7-sect-2.4

Wenn Sie das erledigt haben, könnten Sie gelegentlich svn_apply_autoprops.py von http://subversion.tigris.org/tools_contrib.html ausführen

svn_apply_autoprops.py überprüft Ihre Autoprops-Einstellungen und geht durch Ihr Repository, um alles einzurichten.

0voto

Bert Huijben Punkte 19285

Okay, die offensichtliche Antwort war richtig; svn:keywords waren nicht mehr für diese Datei festgelegt. Aber ich schwöre, sie waren es früher! Irgendwelche Ideen, wie/warum svn:keywords von einer Datei gelöscht worden sein könnten, ohne dass es jemand bemerkt/absichtlich gemacht hat?

Der erste Grund, der mir einfällt, wäre: Wenn die Datei zu svn hinzugefügt und dann vor dem ersten Commit verschoben/umbenannt wurde, wurden die automatischen Eigenschaften nicht angewendet.

Der Fehler, der dazu führt, dass eine Datei in diesem Fall ihre Eigenschaften verliert, wird in Subversion 1.5.6 und 1.6.0 behoben sein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X