contrib / fast-import / git-p4.txton commit Clean up python class names. (711544b)
   1git-p4 - Perforce <-> Git converter using git-fast-import
   2
   3Usage
   4=====
   5
   6git-p4 supports two main modes: Importing from Perforce to a Git repository is
   7done using "git-p4 sync". Submitting changes from Git back to Perforce is
   8done using "git-p4 submit".
   9
  10Importing
  11=========
  12
  13The procedure is simple:
  14
  15  mkdir repo-git
  16  cd repo-git
  17  git init
  18  git-p4 sync //path/in/your/perforce/depot
  19
  20This will import the current head revision of the specified depot path into a
  21"p4" branch of your git repository. You can use the --branch=mybranch option
  22to use a different branch.
  23
  24If you want to import the entire history of a given depot path just use
  25
  26  git-p4 sync //path/in/depot@all
  27
  28To achieve optimal compression you may want to run 'git repack -a -d -f' after
  29a big import. This may take a while.
  30
  31Support for Perforce integrations is still work in progress. Don't bother
  32trying it unless you want to hack on it :)
  33
  34
  35Incremental Imports
  36===================
  37
  38After an initial import you can easily synchronize your git repository with
  39newer changes from the Perforce depot by just calling
  40
  41  git-p4 sync
  42
  43in your git repository.
  44
  45It is recommended to run 'git repack -a -d -f' from time to time when using
  46incremental imports to optimally combine the individual git packs that each
  47incremental import creates through the use of git-fast-import.
  48
  49Submitting
  50==========
  51
  52git-p4 has support for submitting changes from a git repository back to the
  53Perforce depot. This requires a Perforce checkout separate to your git
  54repository. To submit all changes that are in the current git branch but not in
  55the "p4" branch (or "origin" if "p4" doesn't exist) simply call
  56
  57    git-p4 submit
  58
  59in your git repository. If you want to submit changes in a specific branch that
  60is not your current git branch you can also pass that as an argument:
  61
  62    git-p4 submit mytopicbranch
  63
  64You can override the reference branch with the --origin=mysourcebranch option.
  65
  66If a submit fails you may have to "p4 resolve" and submit manually. You can
  67continue importing the remaining changes with
  68
  69  git-p4 submit --continue
  70
  71After submitting you should sync your perforce import branch ("p4" or "origin")
  72from Perforce using git-p4's sync command.