<!DOCTYPE html> <html> <head> <meta http-equiv = "X-UA-Compatible" content = "IE=edge" /> <meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" /> <title> Advanced Configuration // P4Convert: User Guide </title> <meta name = "generator" content = "DocBook XSL Stylesheets V1.78.1 with Perforce customizations" /> <link rel = "home" href = "copyright.html" title = "P4Convert: User Guide" /> <link rel = "up" href = "chapter.config.html" title = "Configuration" /> <link rel = "prev" href = "config.unicode_support.html" title = "Unicode Support" /> <link rel = "next" href = "chapter.running.html" title = "Running P4Convert" /> <meta name = "Section-title" content = "Advanced Configuration" /> <meta name = "viewport" content = "width=device-width, initial-scale=1.0" /> <link rel = "stylesheet" href = "vendor/bootstrap/css/bootstrap.css" /> <link rel = "stylesheet" href = "vendor/prettify/prettify.css" /> <link rel = "stylesheet" href = "css/perforce.css" /> <link rel = "stylesheet" href = "css/print.css" media = "print" /> <link rel = "shortcut icon" href = "images/favicon.ico" /> <!--[if lt IE 9]> <script type="text/javascript" src="vendor/respond/respond.min.js"></script> <link rel="stylesheet" type="text/css" href="css/ie.css"/> <![endif]--> </head> <body><a id = "page-top" ></a><div id = "header" > <div class = "container" ><button name = "toc" type = "button" class = "toc" ><span class = "glyphicon glyphicon-list" ></span></button><span class = "logo" ><a href = "http://www.perforce.com/documentation" ></a></span><h1><a href = "index.html" class = "title" ><span class = "brand" ></span><span class = "guide-title" > P4Convert: User Guide </span><span class = "guide-subtitle" > (April 2015) </span></a></h1><a title = "Download a PDF version of this guide" class = "pdf" href = "ethel.pdf" ><span class = "glyphicon glyphicon-book" ></span></a><button name = "search" type = "button" class = "search" title = "Search this guide" ><span class = "glyphicon glyphicon-search" ></span></button></div> <div id = "progress" ></div> </div> <div id = "content" class = "content" tabindex = "-1" > <div class = "container" > <!----> <div class = "section" id = "config.advanced" > <div class = "titlepage" > <div> <div> <h2 class = "title" style = " clear : both " > Advanced Configuration </h2> </div> </div> </div> <div class = "section" id = "config.advanced.directory_properties" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Directory Properties </h3> </div> </div> </div> <p> The following options allow Subversion Directory Properties to be stored as versioned files in Perforce. To enable this mode set the following property to <code class = "literal" > true </code> : </p><pre lang = "ini" class = "programlisting" > com.p4convert.svn.propEnabled=true </pre><p> To select the property name and format: (Note: only <code class = "literal" > ini </code> mode is supported) </p><pre lang = "ini" class = "programlisting" > com.p4convert.svn.propEncoding=ini com.p4convert.svn.propName=.svn.properties </pre></div> <div class = "section" id = "config.advanced.empty_changelists" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Empty changelists </h3> </div> </div> </div> <p> The following property will attempt to skip empty changes (where the change contains no revisions). This is typically the default behavior of the client or Import Mode, so it is only really used in Convert Mode. </p><pre lang = "ini" class = "programlisting" > com.p4convert.p4.skipEmpty=false </pre></div> <div class = "section" id = "config.advanced.username_translation" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Username translation </h3> </div> </div> </div> <p> A username map file ( <code class = "filename" > users.map </code> ) can be generated using the <em class = "parameter" ><code> --users </code></em> option and then the right-hand-side modified with the new user name. The rename will only occur if the conversion tool finds the <code class = "filename" > users.map </code> file in the current working directory. Username mapping is not currently supported for CVS conversions. </p> </div> <div class = "section" id = "config.advanced.binary_file_detection" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Binary file detection </h3> </div> </div> </div> <p> Binary files can be identified by adding their extensions to the type map file <code class = "filename" > types.map </code> . The format is based on Perforce typemap spec, however it is limited to paths of the form <code class = "filename" > //... <em class = "replaceable" ><code> .ext </code></em></code> (where <em class = "replaceable" ><code> .ext </code></em> is the binary extension). </p> <p> Default Type map ( <code class = "filename" > types.map </code> ): </p><pre class = "programlisting" > TypeMap: binary //....zip binary //....gif binary //....png binary //....jpg binary //....dll binary //....class binary //....jar binary //....ecsfr </pre><p> Modification bits ( <code class = "literal" > +mxwlk </code> ) are supported and can be added using the type mapping. Binary detection though the type map is recommended as conversion is much faster. Binary files not identified in the type map will be scanned by the ICU4J libraries and if no text/Unicode match is found they are assumed to be binary. </p> <div class = "warning admonition" > <h3 class = "title" > Warning </h3> <p> ICU4J may incorrectly identify small binary files as text creating sync issues on Windows clients. </p> </div> </div> <div class = "section" id = "config.advanced.changelist_description_format" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Changelist Description Format </h3> </div> </div> </div> <p> The <em class = "parameter" ><code> logRevID </code></em> option can be used to reformat the Subversion revision descriptions to include the revision ID using the template: </p> <div class = "itemizedlist" > <ul class = "itemizedlist" style = " list - style - type : disc ; " > <li class = "listitem" > <p> <em class = "replaceable" ><code> <rev> </code></em> substituted with the Subversion revision </p> </li> <li class = "listitem" > <p> <em class = "replaceable" ><code> <description> </code></em> substituted with the Subversion log </p> </li> </ul> </div> <p> The default value (as-is): </p><pre lang = "ini" class = "programlisting" > com.p4convert.p4.logRevID=<description> </pre></div> <div class = "section" id = "config.advanced.case_sensitivity" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Case Sensitivity </h3> </div> </div> </div> <p> The platform case sensitivity is detected when generating the configuration file. There is normally no reason to change this behavior from the detected defaults. Conversions between different platforms should be avoided especially when converting from a case sensitive environment (such as Linux) to a case insensitive environment (such as Windows). The advanced case handling options supported are set using one of the following options: </p><pre lang = "ini" class = "programlisting" > com.p4convert.p4.caseMode=FIRST </pre><div class = "itemizedlist" > <ul class = "itemizedlist" style = " list - style - type : disc ; " > <li class = "listitem" > <p> <code class = "literal" > NONE </code> - treat all paths as case sensitive (Linux). </p> </li> <li class = "listitem" > <p> <code class = "literal" > LOWER </code> - convert all paths to lower case </p> </li> <li class = "listitem" > <p> <code class = "literal" > UPPER </code> - convert all paths to upper case </p> </li> <li class = "listitem" > <p> <code class = "literal" > FIRST </code> - use the first encountered case combination (Windows) </p> </li> </ul> </div> <p> When using Convert Mode the generated Perforce archive files are based on the platform's case sensitivity. However on Linux platforms it can be useful to store archive files as if on a case-insensitive server ( <span class = "command" ><strong> p4d -C1 </strong></span> ). This can be simulated by setting the following option to <code class = "literal" > true </code> : </p><pre lang = "ini" class = "programlisting" > com.p4convert.p4.lowerCase=true </pre><div class = "important admonition" > <h3 class = "title" > Important </h3> <p> If this option is set the path to the Perforce root directory, defined by <em class = "parameter" ><code> com.p4convert.adv.p4root </code></em> , must be in <span class = "bold" ><strong> lower case </strong></span> and the case mode of <code class = "literal" > FIRST </code> must be used. </p> </div> </div> <div class = "section" id = "config.advanced.rcs_keyword_expansion" > <div class = "titlepage" > <div> <div> <h3 class = "title" > RCS Keyword expansion (svn:keywords) </h3> </div> </div> </div> <p> By default, RCS keyword expansion attributes are imported; however setting the configuration option: </p><pre lang = "ini" class = "programlisting" > com.p4convert.svn.keepKeyword=true </pre><p> Setting a value of <code class = "literal" > false </code> will ignore all previous keyword attributes and import the files as normal text. See <a class = "link" href = "chapter.notes.html#notes.keyword_expansion_issues" title = "Keyword Expansion Issues:" > keyword notes </a> for known issues. </p> </div> <div class = "section" id = "config.advanced.merge_information" > <div class = "titlepage" > <div> <div> <h3 class = "title" > Merge Information (svn:mergeinfo) </h3> </div> </div> </div> <p> Supports Subversion 1.5-1.7 merge information and calculates the corresponding Perforce integration credit for the various actions. The feature is not enabled by default and if required the following configuration option must be set to true: </p><pre lang = "ini" class = "programlisting" > com.p4convert.svn.mergeInfoEnabled=true </pre></div> </div> </div> </div> <div id = "nav" class = "toc" ></div> <div id = "search" > <div class = "input" ><input id = "search-text" type = "search" placeholder = "Search this guide" /><button name = "clear" type = "button" class = "clear" ><span class = "glyphicon glyphicon-remove-sign" ></span></button></div> <div class = "controls" > <div class = "substring" ><input type = "checkbox" class = "substring" name = "substring" value = "hide" checked = "1" /><span class = "description" > Hide partial matches </span></div> <div class = "highlighter" ><input type = "checkbox" class = "highlight" name = "highlight" value = "show" checked = "1" /><span class = "description" > Highlight matches </span></div> </div> <div class = "count" ><span class = "number" > 0 </span> matching pages </div> <ul class = "results" ></ul> </div> <div id = "footer" > <div class = "container" ><a accesskey = "p" class = "nav-prev" title = "Press 'p', or left-arrow, to view the previous page" href = "config.unicode_support.html" ><span class = "glyphicon glyphicon-chevron-left" ></span><div class = "label" > Previous </div> <div class = "title" > Unicode Support </div></a><a accesskey = "n" class = "nav-next" title = "Press 'n', or right-arrow, to view the next page" href = "chapter.running.html" ><span class = "glyphicon glyphicon-chevron-right" ></span><div class = "label" > Next </div> <div class = "title" > Running P4Convert </div></a></div> </div><script type = "text/javascript" src = "vendor/jquery/jquery-1.11.3.min.js" ></script><script type = "text/javascript" src = "vendor/bootstrap/js/bootstrap.js" ></script><script type = "text/javascript" src = "vendor/cookie/jquery.cookie.js" ></script><script type = "text/javascript" src = "vendor/highlight/jquery.highlight.js" ></script><script type = "text/javascript" src = "vendor/jsrender/jsrender.js" ></script><script type = "text/javascript" src = "vendor/touchwipe/jquery.touchwipe.min.js" ></script><script type = "text/javascript" src = "vendor/prettify/prettify.js" ></script><script defer = "1" type = "text/javascript" src = "js/index.js" ></script><script defer = "1" type = "text/javascript" src = "js/toc.js" ></script><script defer = "1" type = "text/javascript" src = "js/perforce.js" ></script></body> </html>
#
Change
User
Description
Committed
#1
13899
Paul Allen
added docs to gradle
10 years ago