// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************

/*!
    \page creator-vcs-perforce.html
    \previouspage creator-reference.html

    \ingroup creator-reference-vcs

    \title Perforce

    \brief Additional Perforce functions.

    Perforce is a fast software configuration management system developed by
    Perforce Software.

    \note Enable the Perforce plugin to use it.

    \section1 Configuring Perforce

    To set Perforce preferences, select \preferences >
    \uicontrol {Version Control} > \uicontrol Perforce:

    \image qtcreator-preferences-vcs-perforce.webp {Perforce preferences}

    In \uicontrol {P4 command}, set the path to the command-line client
    executable.

    Set workspace details in \uicontrol {P4 user}, \uicontrol {P4 client}, and
    \uicontrol {P4 port}.

    \section1 Using Configuration Files

    To specify workspace details individually for several projects, use
    configuration files:

    \list 1
        \li Create a \c {p4config.txt} configuration file for each project in the
            top level project directory.
        \li Go to \preferences > \uicontrol {Version Control} >
            \uicontrol Perforce.
        \li Clear \uicontrol {Environment Variables}.
        \li To set \c P4CONFIG to use the file that you created, run the
            following command from the command line once:
            \badcode
            p4 set P4CONFIG=p4config.txt
            \endcode
    \endlist

    For more information about using the \c P4CONFIG variable, see
    \l{Perforce: P4CONFIG}.

    \section1 Editing Files

    In addition to the standard version control system functions described in
    \l {Use common VCS Functions}, you can select \uicontrol Tools >
    \uicontrol Perforce > \uicontrol {Edit File} to open a file for editing
    within the client workspace. By default, files are automatically opened for
    editing. To disable this feature, select \preferences >
    \uicontrol {Version Control} > \uicontrol Perforce,
    and then deselect the \uicontrol {Automatically open files when editing}
    check box.

    To list files that are open for editing, select \uicontrol Tools >
    \uicontrol Perforce > \uicontrol Opened.

    To group files for commit, select \uicontrol Tools > \uicontrol Perforce >
    \uicontrol {Pending Changes}.

    To view information about change lists and the files in them, select
    \uicontrol Tools > \uicontrol Perforce > \uicontrol Describe.

    \sa {Enable and disable plugins}, {Set up version control systems},
    {Use common VCS functions}, {Version Control Systems}
*/
