GithubHelp home page GithubHelp logo

classicvalues / vscode-perforce Goto Github PK

View Code? Open in Web Editor NEW

This project forked from stef-levesque/vscode-perforce

0.0 1.0 0.0 1.79 MB

Perforce basic commands for Visual Studio Code

License: MIT License

TypeScript 100.00%

vscode-perforce's Introduction

vscode-perforce

GitHub issues Dependency Status
Dev Dependency Status
GitHub license button VS Code marketplace button Gitter chat button

Perforce integration for Visual Studio Code

Login Example

Commands

  • add - Open a new file to add it to the depot
  • edit - Open an existing file for edit
  • revert - Discard changes from an opened file
  • diff - Display diff of client file with depot file
  • diff revision - Display diff of client file with depot file at a specific revision
  • info - Display client/server information
  • login, logout - Login operations

Configuration

Name Type Description
perforce.client string Use the specified client
perforce.user string Use the specified user
perforce.port string Use the specified protocol:host:port
perforce.password string Use the specified password
 
perforce.editOnFileSave boolean Automatically open a file for edit when saved
perforce.editOnFileModified boolean Automatically open a file for edit when Modified
perforce.addOnFileCreate boolean Automatically Add a file to depot when Created
perforce.deleteOnFileDelete boolean Automatically delete a file from depot when deleted
 
perforce.dir string Overrides any PWD setting (current working directory) and replaces it with the specified directory
perforce.command string Configure a path to p4 or an alternate command if needed
perforce.compatibilityMode string Specify if we should run in compatibility mode, currently support perforce and sourcedepot
perforce.maxBuffer number Specify the largest amount of data allowed for commands, including file comparison. Default is 1048576 (1MB)
perforce.realpath boolean Experimental Try to resolve real file path before executing command
 
perforce.activationMode string Controls when to activate the extension (always,autodetect,off)
perforce.countBadge string Controls the badge counter for Perforce (all,off)
perforce.annotate.enable boolean Show annotation for every file
perforce.annotate.changelist boolean Output changelist numbers rather than revision numbers for each line
perforce.annotate.user boolean Output the user who modified the line in the file and the date it was modified
perforce.changelistOrder string Specifies the direction of the chnagelist sorting (descending,ascending)
perforce.scmFileChanges boolean Open file changes when selected in SCM Explorer
perforce.ignoredChangelistPrefix string Specifies the prefix of the changelists to be ignored.
perforce.hideNonWorkspaceFiles boolean Hide non workspace files in the SCM Explorer. Default changelist only submits files that are opened in current workspace. Warning: If you submit other changelists than the default it will submit files that are not visible.
perforce.swarmHost string Specifies the hostname of the Swarm server for annotation links. (https://localhost)
perforce.hideShelvedFiles boolean Hide shelved files in the SCM Explorer.
perforce.hideEmptyChangelists boolean Hide changelists with no file in the SCM Explorer.
 
perforce.bottleneck object Experimental Throttle all perforce commands via bottleneck.

Activation

You can specify how you want the extension to activate by setting the parameter perforce.activationMode

  • always - Always try to activate the extension (old behavior)
  • autodetect - Only activate when detecting a valid depot or .p4config file (default)
  • off - Don't try to activate

The following can be set in VSCode user or workspace settings to properly detect the perforce depot

{
    "perforce.user": "your_user",
    "perforce.client": "your_client",
    "perforce.port": "example.com:1666"
}

You can also create a .p4config file at the root of your workspace with perforce variables

P4USER=your_user
P4CLIENT=your_client
P4PORT=example.com:1666

More detail in Perforce Documentation

Multi-root support

You can now specify the following settings per workspace:

  • perforce.client
  • perforce.user
  • perforce.port
  • perforce.password
  • perforce.dir

This allows you to work with different repository within the same editor. See Multi-root Workspaces - Settings for more details.

Status bar icons

  • check opened in add or edit
  • file-text not opened on this client
  • circle-slash not under client's root

Source Control in VS Code

SCM Switch

Visual Studio Code now allow to choose which Source Control Manager to use.

  • You can find Switch SCM Provider in the command palette, or in the Source Control section menu
  • Use the input box to create new changelists
  • Right-click on file and changelist for more commands

SCM Perforce
Keep in mind this is still in early beta! Explore and leave your comments on GitHub

Common Questions

Q: Something is not working

A: Here are a few steps you should try first:

  1. Look at the logs with Perforce: Show Output
  2. Search the existing issue on GitHub
  3. If you can't find your problem, create an issue, and please include the logs when possible

Q: Operations on a large files fail

A: Increase perforce.maxBuffer in your user settings.
more...

Q: There is a lot of duplicated changelists showing up in the Source Control viewlet

A: Please provide your Perforce Output logs in issue #62

Q: I'm using this old thing called Source Depot...

A: Great :) Try to set the experimental setting "perforce.compatibilityMode": "sourcedepot"
more...

Installation

  1. Install Visual Studio Code (1.19 or higher)
  2. Launch Code
  3. From the command palette ctrl+shift+p (Windows, Linux) or cmd+shift+p (OS X)
  4. Select Install Extensions
  5. Choose the extension Perforce for VS Code
  6. Reload Visual Studio Code

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Requirements

Visual Studio Code v1.19

Credits

License

MIT

vscode-perforce's People

Contributors

stef-levesque avatar jel-massih avatar vrachels avatar hoovercj avatar ihalip avatar howardcvalve avatar tw1nk avatar egamma avatar joaomoreno avatar pjdanfor avatar forgottenski avatar ralberts avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.