3

I downloaded latest p4 tool, but it missing reconcile command:

$ p4 -V
Perforce - The Fast Software Configuration Management System.
Copyright 1995-2012 Perforce Software.  All rights reserved.
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/)
See 'p4 help legal' for full OpenSSL license information
Version of OpenSSL Libraries: OpenSSL 1.0.1c 10 May 2012
Rev. P4/LINUX26X86_64/2012.2/536738 (2012/10/16).

here is list of supported commands (I removed some lines):

$ p4 help commands
Perforce client commands:

add         Open a new file to add it to the depot
admin       Perform administrative operations on the server
annotate    Print file lines along with their revisions
archive     Archive obsolete revisions to archive depots.
...
pull        Cause satellite to pull journal or file data from master
rename      Explains how to rename files
reopen      Change the type or changelist number of an opened file
replicate   Poll for journal changes and apply to another server
resolve     Merge open files with other revisions or files
resolved    Show files that have been merged but not submitted
restore     Restore archived revisions to their original location.
revert      Discard changes from an opened file
review      List and track changelists (for the review daemon)
reviews     Show what users are subscribed to review files
set         Set variables in the registry (Windows only)
shelve      Store files from a pending changelist into the depot
sizes       Display size information for files in the depot
submit      Submit open files to the depot
sync        Synchronize the client with its view of the depot
tag         Tag files with a label
tickets     Display list of session tickets for this user
...
workspaces  Display list of known clients
where       Show how file names map through the client view

Commands reconcile and status are missing. Server version is 2010.2/347035 and it can't be upgraded since it located at customer side and manages hundreds depots.

From my point of view - reconcile command should be completely client-side, so it shouldn't depend on server version. Or I'm wrong? What is the reason why these commands are missing?

EDIT: In P4V client I'm able to run similar command Reconcile offline work and it works on our servers.

2 Answers 2

5

Some Perforce features only require an updated server; some require an updated client; some require both. Each new feature's requirements are described in the release notes here:

http://www.perforce.com/perforce/doc.current/user/relnotes.txt

The release notes use a coding mechanism, where a new feature is marked with 1, 2, or 3 asterisks. As noted in the release notes:

* -- requires new p4 client program    
** -- requires new p4d server program    
*** -- requires new p4p proxy program

So, in the case of reconcile, the release notes list it as follows:

#367753 (Bug #68, #889, #989) ** *
    A new command 'p4 reconcile' allows users to reconcile client
    with offline work. The command ...

Note that this line shows "** *" at the end; namely, both a new client and a new server are required. The 367753 at the front of the note indicates that both the server and client must be at version 367753 or later.

So that's how you can tell whether you need a new client, or a new server, or both, for a particular Perforce feature.

2
  • Seems we really need to upgrade the server. I got the answer on question, but what is still unclear for me is that why P4V can do reconcile with old server.
    – Oleksandr
    Commented Dec 29, 2012 at 9:55
  • Reconcile offline work is a similar, but not identical, implementation of the feature. Indeed, reconcile offline work is implemented entirely in P4V, and does not require the latest server. The new reconcile feature is very similar, but is implemented by the server and the command-line client and thus is available in situations where P4V is not available. They're just alternate implementations of similar functionality. Commented Dec 30, 2012 at 3:08
1

That's because your P4 version is too old. reconcile was introduced in a 2012 release.

http://www.perforce.com/blog/120126/new-20121-p4reconcile-p4status

I believe you need both the server and the client side to support a new feature - I could be wrong, but since you have a later client, and I have experienced similar "this should just be a client thing" that require the server to support it as well (it was 4 years since I used perforce, so excuse me if I don't remember exactly which feature it was that didn't work because although the client supported it, the server didnt)

5
  • The article states that it was introduced in 2012.1 and the OP's question states they are using 2012.2 so it's not that.
    – Troubadour
    Commented Dec 28, 2012 at 10:16
  • But he's using server version 2010.2 - I'm pretty sure you need the relevant server to support these things - at least in my experience with other features. Commented Dec 28, 2012 at 10:17
  • It might be a good idea to say that in your answer then since that was also part of the original question :)
    – Troubadour
    Commented Dec 28, 2012 at 10:21
  • Thanks for your opinion, Mats! Actually Reconcile offline work in p4v works perfectly on our servers, so I supposed that this feature is client-side. It's unclear for me - why p4v supports it, but p4 tool - doesn't. I'm writing automation script and it requires reconcile command, so p4v isn't option for me in this case.
    – Oleksandr
    Commented Dec 28, 2012 at 10:34
  • Given that the article I linked talks about "p4 reconcile", I would think that there is something to what I'm saying. But I haven't used this particular feature... (I do take it you have tried, and it's not just a case of "someone forgot to add it to the output for help"?) Commented Dec 28, 2012 at 10:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.