Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Milan's post is well-researched and well-written, but its length demonstrates beyond a shadow of a doubt that the P4SCC model is broken. Storing source control binding info inside the project &amp; solution files is ridiculous. Enforcing (via sccprojectname) that a project be part of only one solution is equally ridiculous.</p> <p>Additionally, P4SCC has a tremendous performance cost in a large solution, as it retrieves info from source control for each file at startup, and maintains that state in memory throughout the development session. It creates extra cruft in the form of information-free .vsscc &amp; vssscc files to support some SCC feature that (AFAICT) Perforce does not use. </p> <p>The ideal Perforce integration looks like:</p> <ul> <li>If I create a new solution, project, or project item, run 'p4 add'.</li> <li>If I change a file, run 'p4 edit'.</li> <li>Some toolbar/context menu integration for revision history, revision graph, timelapse/blame, and 'show in P4 gui'.</li> <li>(nice to have) If I rename a file that exists in the depot, run 'p4 integrate' and 'p4 delete'. If I rename a file opened for add, run 'p4 revert' and 'p4 add'.</li> <li>That's all</li> </ul> <p>We have moved completely away from P4SCC and its bizarre requirements and burdens. Instead we use <a href="http://code.google.com/p/niftyplugins/" rel="noreferrer">NiftyPerforce</a>. There are some bugs, but we find working around these bugs to be much less frustrating than working around the design defects in the Perforce&lt;->VSSCC model.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
    1. COThat sure looks nice. I'll show it to my colleagues. I agree that P4SCC is horribly broken, although I can't help but feel that it must be possible to provide its features (like showing status icons for files) without being *quite* so slow on massive solutions and without all the "source control information in checked-in files" nonsense. I wonder why Perforce don't make a better plugin - surely many of their customers must use Visual Studio?
      singulars
    2. COMy understanding is that the cruft and perf issues are endemic to Visual Studio's source control plug-in interface; there exists an architecture mismatch such that P4 has to pretend to act like VSS. From Perforce support in March 2008: "It is unlikely that we would create a non-MSSCCI package for Visual Studio. There are too many interfaces into Visual Studio that would then be missing and would not give the user any benefit in the long run." I don't know if they still stand behind this statement; odds are they do. I also have not tried P4SCC since that time; perf might be better now.
      singulars
    3. CO@Weeble, @Timbo - I agree that P4SCC is not the greatest piece of software in the world and have seen the slowdowns in large projects myself. However, I would argue that the complexity of setting up P4 bindings in both solution and projects is a one-time "tax" you pay and never have to pay again. Things "just work" afterwards. I think both the performance characteristics and complexity of setup could be improved radically were Perforce to release source of P4SCC to the community. One can always dream :-).
      singulars
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload