spacemacs/layers/+source-control/perforce/README.org
Rahul Rameshbabu 8365979326 [perforce] Add p4-shelve and p4-unshelve commands with keybindings
Shelving and unshelving changelists are operations commonly used when
choosing Perforce as a VCS solution. Package consumed by the "perforce"
layer already provides "p4-shelve" and "p4-unshelve" commands that can
be exposed by the layer. Provide keybindings for these two commands as
well.
2021-05-27 22:39:43 +02:00

83 lines
4.6 KiB
Org Mode

#+TITLE: Perforce layer
#+TAGS: layer|versioning
[[file:img/p4.png]]
* Table of Contents :TOC_5_gh:noexport:
- [[#description][Description]]
- [[#features][Features:]]
- [[#install][Install]]
- [[#key-bindings][Key bindings]]
* Description
This layer integrates =Perforce= SCM system into Spacemacs.
** Features:
- Support for running [[https://www.perforce.com/][Perforce]] (p4) SCM commands directly from Emacs.
* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =perforce= to the existing =dotspacemacs-configuration-layers= list in this
file.
You'll have to install the =p4= command line tool from the [[https://www.perforce.com/downloads/helix][download page]].
Don't forget to setup the environment variables:
- =P4_PORT=
- =P4_CLIENT=
- =P4_USER=
- =P4_PASSWD=
* Key bindings
| Key binding | Description |
|-------------+--------------------------------------------------------------|
| ~SPC p 4 a~ | add a file in depot |
| ~SPC p 4 d~ | delete a file in depot |
| ~SPC p 4 D~ | p4-describe |
| ~SPC p 4 e~ | checkout a file |
| ~SPC p 4 r~ | revert a file |
| ~SPC p 4 R~ | refresh content of an file. =sync -f= |
| ~SPC p 4 S~ | submit CL |
| ~SPC p 4 [~ | shelve CL |
| ~SPC p 4 ]~ | unshelve specified CL |
| ~SPC p 4 b~ | create, modify, or delete a branch view specification |
| ~SPC p 4 B~ | display list of branch specifications |
| ~SPC p 4 c~ | create or edit a client workspace specification and its view |
| ~SPC p 4 C~ | display list of pending and submitted CL |
| ~SPC p 4 E~ | change the filetype of an open file or move it to another CL |
| ~SPC p 4 @~ | p4-depot-find-file |
| ~SPC p 4 f~ | list revision history of files |
| ~SPC p 4 F~ | list files in the depot |
| ~SPC p 4 G~ | display current perforce client name |
| ~SPC p 4 g~ | synchronize client with depot |
| ~SPC p 4 h~ | p4-help |
| ~SPC p 4 H~ | list revisions most recently synced to the current workspace |
| ~SPC p 4 i~ | display client/server information |
| ~SPC p 4 I~ | integrate one set of files into another |
| ~SPC p 4 j~ | create or edit a job (defect) specification |
| ~SPC p 4 J~ | display list of all jobs |
| ~SPC p 4 l~ | create or edit a label specification |
| ~SPC p 4 L~ | display list of defined labels |
| ~SPC p 4 :~ | apply label to the contents of the client workspace |
| ~SPC p 4 m~ | move files from one location to another |
| ~SPC p 4 o~ | list open files and display file status |
| ~SPC p 4 p~ | write a depot file to a buffer |
| ~SPC p 4 P~ | p4-set-p4-port |
| ~SPC p 4 q~ | quit window |
| ~SPC p 4 y~ | resolve integrations and updates to workspace files |
| ~SPC p 4 s~ | identify differences between workspace and depot |
| ~SPC p 4 t~ | toggle perfore server check when opening files. |
| ~SPC p 4 u~ | create or edit user specification |
| ~SPC p 4 U~ | list perforce users |
| ~SPC p 4 v~ | emacs perforce integration version |
| ~SPC p 4 V~ | p4 blame |
| ~SPC p 4 w~ | show how file names are mapped by client view |
| ~SPC p 4 x~ | delete a file from the depot |
| ~SPC p 4 X~ | mark jobs done by specific CL |
| ~SPC p 4 z~ | p4-reconcile |
| ~SPC p 4 =~ | p4 diff |
| ~SPC p 4 +~ | p4 diff on all opened files |
| ~SPC p 4 -~ | p4 ediff |