Frage

Es ist kein problem, um alle commits, die auf eine bestimmte Datei, die durch Ihre Lebensläufe-Geschichte.

Was ich brauche, ist, alle Dateien anzeigen, die sich auf die gleichen Tag, oder in der Nähe einer bestimmten Datei oder eine nur-Datum-Bereich.Das wichtigste ist, dass ich alle commits vor oder nach oder zu einem bestimmten Datum.

Für Beispiel.Datei x 20 Revisionen, der jüngste ist 25. Juni 2011

Es ist ein Fehler, und ich brauche, um herauszufinden, was andere Dateien, die geprüft wurden, in die an diesem Datum die Suche nach möglichen Quellen der Fehler.Sogar etwas, das hat die gleiche Wirkung wie WHERE date > '06-06-2011 wäre das völlig in Ordnung.

Ich habe versucht zu googeln, aber es scheint nicht zu sein erwähnt.Allerdings habe ich gehört, dass es so etwas wie den obigen code-Beispiel ist möglich..

War es hilfreich?

Lösung

Ich habe CVSPs verwendet, um solche Dinge zu tun. Es stellt Gruppen von Check -Ins in Sets zusammen, die ein "Patchset" aufgerufen werden. Es verfügt über alle Arten von Funktionen, um nach Patchsets zu suchen, die von bestimmten Benutzern erstellt wurden, zwischen Daten, Patchsets, die eine bestimmte Datei betreffen usw. Es können auch Differenzberichte von Patchsets erstellen, was äußerst hilfreich ist, um herauszufinden, was sich geändert hat.

http://www.cobite.com/cvsps/

Andere Tipps

Ich habe jetzt eine Problemumgehungslösung. Ich werde es teilen, aber ich bin immer noch sehr daran interessiert zu wissen, wie das geht / wenn dies getan werden kann.

Die Problemumgehung:

Check out two copies of the code based on certain dates
 and do a directory diff with something like Beyond Compare. 

Problem:

What changes were made on or around June 25th?

Lösung (Windows):

1. Create two directories C:\dirA\ and C:\dirB\
2. Right-click C:\dirA\ and click 'CVS Checkout...'
3. Select the appropriate Module
4. Click the 'Revision' tab
5. Choose to get the 'Files at a certain time' and pick June 24th.
6. Repeat steps 2 - 4 on C:\dirB\
7. Choose to get the 'Files at a certain time' and pick June 26th.
8. Do a directory diff of C:\dirA\ vs C:\dirB\
9. Any differences will have been checked in on either the 24th, 25th, or 26th.
10. View CVS History to determine the exact date and time of a particular change.

Es ist zwar nicht die eleganteste Lösung, aber es funktioniert. Solange der Datumsbereich nicht zu groß ist und das Projekt nicht mit Entwicklern überfüllt ist, sind die meisten Änderungen, die angezeigt werden, diejenigen, die Sie suchen.

Angesichts der etwas klugenähnlichen Natur davon bin ich natürlich immer noch sehr an einer eleganteren Lösung interessiert, und ich werde diese Frage vorerst offen halten, falls jemand einen Einfluss hat.

Hinweis: (5 Jahre später, Sept.2016)

Die Dokumentation rund um tools, die zum importieren von CVS aktualisiert wurde.

Finden commit 106b672, commit 72e0877, commit 1eba3e5 (22 Sep 2016) von Jeff King (peff).
(Zusammengefasst von Junio C Hamano -- gitster -- in commit 3d0049e, 03 Oct 2016)

cvsps (www.cobite.com/cvsps) ist jetzt bei github.com/andreyvit/cvsps.

git cvs migration jetzt enthält die folgende Warnung:

Diese Anweisungen git-cvsimport Skript, die Schiffe mit git, aber auch andere Importeure können bessere Ergebnisse liefern.Finden git cvsimport

Und gitcvsimport warnt:

WARNUNG: git cvsimport verwendet cvsps version 2, die als veraltet;es funktioniert nicht mit cvsps version 3 und höher.
Wenn Sie sind ausführen eines one-shot-import von einem CVS-repository erwägen Sie die Verwendung cvs2git oder cvs-fast-export.

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