2008-09-17 8 views
3

Wie kann ich den Status der Dateien in meinem Client herausfinden? Ich möchte wissen, ob die Datei aktualisiert oder gepatcht oder modifiziert werden muss. In CVS habe ich einfach ausgeführt " cvs -n -q update.> Datei ". Suchen Sie später nach den Attributen M, U, P, C, um den aktuellen Status der Datei abzurufen.Leistung. Abrufen des Dateistatus in der Sandbox

Zwangsläufig, "p4 sync -n" gibt keine Ausgabe wie "cvs -n -q update". Wie kann ich den aktuellen Status von Dateien sehen, im Falle von Perforce?

+0

Ihr lokaler Arbeitsbereich „Client-Arbeitsplatz“ in Perforce spricht genannt wird - Sie können den Titel aktualisieren, damit es keine Verwirrung. Sandbox (P4Sandbox) ist eine noch zu veröffentlichen (Jan 2012) private Verzweigung/verteilte Lösung in Perforce: http://www.perforce.com/blog/110826/p4sandbox-private-local-branching-distributed-development –

Antwort

4

Zu meinem Wissen gibt es keinen Befehl, der Ihnen genau gibt, was Sie wünschen. Wenn Sie sich ansehen, was der Update-Befehl bewirkt, gibt es in Perforce keine einzige Alternative. Ich denke, dass das, was Sie am nächsten kommen, der Befehl 'p4 fstat' ist, und analysieren Sie die Ausgabe von dort, um die Informationen zu erhalten, die Sie brauchen.

Sie könnten this Seite hilfreich finden.

Ich fand auch dieses link zu einem p4wrapper, der behauptet, in gekommenen CVS-Befehlen (einschließlich Update) in ein Skript einzuwickeln. Es könnte auch andere wie diese geben.

Ich wollte auch sagen, dass die Antwort auf diese Frage ist wie viele mit Perforce bei der Frage "Wie mache ich ...". Die Antwort besteht in der Regel darin, ein Skript zu schreiben, das die Ausgabe von perforce-Befehlen übernimmt, um die gewünschten Ergebnisse zu erhalten. Ihre Philosophie besteht darin, Bare-Bones-Befehle zur Verfügung zu stellen und Entwickler von der Grundfunktionalität abzuheben. Liebe es oder hasse es, das ist das Grundmodell. Viele gute Skripts finden Sie im Perforce Public Depot here.

+0

Danke für das Zeigen auf die Skripte. Ich stimme der Philosophie zu. Ich weiß, was ich will und ich bin es, der es schaffen kann (via Skript). Aus Gründen unbekannt, ich Perforce Dokumentation zu kryptisch finden, muss ich in die Dokumentation erhalten. – Karthi

1

Nicht ganz sicher, was du meinst. Wenn Sie sprechen, zu sehen, welche Dateien müssen „Lösung“ (in notgedrungen Sprache), dann können Sie verwenden:

p4 resolve -n 

Siehe p4 Befehlszeile manuell Webseite hier: http://www.perforce.com/perforce/doc.current/manuals/cmdref/resolve.html#1040665

Auch P4V hat ein nettes Feature um nicht gesendete und schmutzige Dateien hervorzuheben, wenn Sie diesen Client verwenden. Klicken Sie mit der rechten Maustaste auf einen Fodler in der Arbeitsbereichssicht und wählen Sie "Offline-Arbeit abstimmen". Nach ein wenig Verarbeitung erhalten Sie eine Liste von Dateien, die nicht mit dem Depot synchronisiert sind.

Hoffe, das hilft.

+0

Danke Tenpn . Ich suche nach einem Weg, um herauszufinden, ob die Datei aktualisiert werden muss, ob sie geändert wurde oder ob sie gepatcht werden muss. Sie haben also eine ungefähre Vorstellung davon, was Ihre Sandbox ist. Ich werde das Handbuch zur Lösung und "Offline-Arbeit abstimmen". Und ja, deine Antwort hat geholfen. Vielen Dank. – Karthi

3

Nicht sicher, ob Sie das suchen, aber der Befehl p4 diff hat ein paar nützliche Optionen. Von der Verwendung:

 
    -sa  Opened files that are different from the revision 
      in the depot, or missing. 
    -sb  Opened for integrate files that have been resolved 
      but have been modified after being resolved. 
    -sd  Unopened files that are missing on the client. 
    -se  Unopened files that are different from the revision 
      in the depot. 
    -sl  Every unopened file, along with the status of 
      'same, 'diff', or 'missing' as compared to its 
      revision in the depot. 
    -sr  Opened files that are the same as the revision in the 
      depot.