Name | p4checkout JSON |
Version |
0.1.0
JSON |
| download |
home_page | |
Summary | Standalone GUI to check out a file to a pending changelist in Perforce |
upload_time | 2023-10-06 19:21:49 |
maintainer | |
docs_url | None |
author | Dvd848 |
requires_python | >=3.9 |
license | MIT |
keywords |
p4
perforce
gui
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# p4checkout
`p4checkout` acts as a standalone GUI utility offering Perforce users the ability to check out
a file to a specific pending changelist.
While this ability is available out of the box by directly using the official Perforce visual
client (`p4v`), it's convenient to integrate it into the user's IDE. Most popular IDEs have
an official Perforce plugin, but those that don't can use `p4checkout` to easily check out
files before editing them.
## Screenshots
![](https://github.com/Dvd848/p4checkout/raw/main/images/img1.png)
![](https://github.com/Dvd848/p4checkout/raw/main/images/img2.png)
![](https://github.com/Dvd848/p4checkout/raw/main/images/img3.png)
![](https://github.com/Dvd848/p4checkout/raw/main/images/img4.png)
![](https://github.com/Dvd848/p4checkout/raw/main/images/img5.png)
For reference, the official pop-up box from `p4v`:
![](https://github.com/Dvd848/p4checkout/raw/main/images/p4v.png)
## Usage
```console
$ p4checkout -h
usage: p4checkout [-h] [--version] [-v] [-p PORT] [-c CLIENT] [-s HOST] [-u USER] path
positional arguments:
path Path to file to check out
options:
-h, --help show this help message and exit
--version show program's version number and exit
-v, --verbose Verbosity (-v, -vv, etc.)
-p PORT, --port PORT P4 port (e.g. 'ssl:localhost:1666')
-c CLIENT, --client CLIENT
P4 client
-s HOST, --host HOST P4 host
-u USER, --user USER P4 user
```
> Note: Perforce can usually correctly infer some input parameters such as the host or user.
> It's only required to provide them if for some reason Perforce won't pick them up correctly.
## IDE Integration
Most popular IDEs have a fully-featured Perforce plugin which includes this functionality and more.
However, if you're using an IDE / editor which doesn't have a Perforce plugin, it might be possible to integrate
this basic check-out functionality using a custom "run" feature, if your IDE offers it.
Here are a few examples:
* [Source Insight](https://www.sourceinsight.com/doc/v4/userguide/index.html#t=Manual%2FConcepts%2FSource_Control_Commands.htm)
* [Notepad++](https://npp-user-manual.org/docs/run-menu/)
## Prerequisites
* Python 3.9+ with Tkinter (`sudo apt-get install python3-tk`)
* The [`p4python`](https://pypi.org/project/p4python/) package (`pip install p4python`)
* A working Perforce setup
## Background
I originally developed this utility around 2013. The original version was written in C# and
was used for integration with [Source Insight](https://www.sourceinsight.com/).
The code in this repository is a recent Python port (2023) inspired by the original C# code.
However, as I (unfortunately) don't work on any Perforce-based projects anymore, it was only tested on a
non-production basic home-setup created for this purpose only.
(One last thing, since it has to be said: `p4v` probably has the best UX/UI that I've ever encountered).
## Limitations
* `p4checkout` doesn't handle logging in to Perforce. Use `p4v` or `p4 login` to renew
your session if it has expired.
## License
`p4checkout` is released under MIT license.
`p4checkout` is an independent software tool.
It is not an official product of Perforce Software, Inc., and is in no way affiliated with or endorsed by Perforce Software, Inc.
Perforce® is a registered trademark of Perforce Software, Inc.
Raw data
{
"_id": null,
"home_page": "",
"name": "p4checkout",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "",
"keywords": "p4,perforce,gui",
"author": "Dvd848",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/71/61/86c3fd850b931cf26716719b50c9a701968d33f52ca819a0cd28f54f58ce/p4checkout-0.1.0.tar.gz",
"platform": null,
"description": "\n# p4checkout\n\n`p4checkout` acts as a standalone GUI utility offering Perforce users the ability to check out \na file to a specific pending changelist. \nWhile this ability is available out of the box by directly using the official Perforce visual \nclient (`p4v`), it's convenient to integrate it into the user's IDE. Most popular IDEs have \nan official Perforce plugin, but those that don't can use `p4checkout` to easily check out \nfiles before editing them.\n\n## Screenshots\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/img1.png)\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/img2.png)\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/img3.png)\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/img4.png)\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/img5.png)\n\nFor reference, the official pop-up box from `p4v`:\n\n![](https://github.com/Dvd848/p4checkout/raw/main/images/p4v.png)\n\n## Usage\n\n```console\n$ p4checkout -h\nusage: p4checkout [-h] [--version] [-v] [-p PORT] [-c CLIENT] [-s HOST] [-u USER] path\n\npositional arguments:\n path Path to file to check out\n\noptions:\n -h, --help show this help message and exit\n --version show program's version number and exit\n -v, --verbose Verbosity (-v, -vv, etc.)\n -p PORT, --port PORT P4 port (e.g. 'ssl:localhost:1666')\n -c CLIENT, --client CLIENT\n P4 client\n -s HOST, --host HOST P4 host\n -u USER, --user USER P4 user\n```\n\n> Note: Perforce can usually correctly infer some input parameters such as the host or user. \n> It's only required to provide them if for some reason Perforce won't pick them up correctly.\n\n## IDE Integration\n\nMost popular IDEs have a fully-featured Perforce plugin which includes this functionality and more. \nHowever, if you're using an IDE / editor which doesn't have a Perforce plugin, it might be possible to integrate \nthis basic check-out functionality using a custom \"run\" feature, if your IDE offers it. \nHere are a few examples:\n\n * [Source Insight](https://www.sourceinsight.com/doc/v4/userguide/index.html#t=Manual%2FConcepts%2FSource_Control_Commands.htm)\n * [Notepad++](https://npp-user-manual.org/docs/run-menu/)\n\n## Prerequisites\n\n * Python 3.9+ with Tkinter (`sudo apt-get install python3-tk`)\n * The [`p4python`](https://pypi.org/project/p4python/) package (`pip install p4python`)\n * A working Perforce setup\n\n## Background\n\nI originally developed this utility around 2013. The original version was written in C# and \nwas used for integration with [Source Insight](https://www.sourceinsight.com/). \nThe code in this repository is a recent Python port (2023) inspired by the original C# code.\nHowever, as I (unfortunately) don't work on any Perforce-based projects anymore, it was only tested on a \nnon-production basic home-setup created for this purpose only. \n\n(One last thing, since it has to be said: `p4v` probably has the best UX/UI that I've ever encountered).\n\n## Limitations\n\n * `p4checkout` doesn't handle logging in to Perforce. Use `p4v` or `p4 login` to renew \n your session if it has expired.\n\n## License\n\n`p4checkout` is released under MIT license.\n\n`p4checkout` is an independent software tool. \nIt is not an official product of Perforce Software, Inc., and is in no way affiliated with or endorsed by Perforce Software, Inc. \nPerforce\u00ae is a registered trademark of Perforce Software, Inc.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Standalone GUI to check out a file to a pending changelist in Perforce",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/Dvd848/p4checkout"
},
"split_keywords": [
"p4",
"perforce",
"gui"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5e0109feb12b3e9dce96e1f57a211057637dd0f9a4ac698744ecc93b98bb7d61",
"md5": "e85904398fe9dc0def2e9b187ae12dda",
"sha256": "aca99c0609e3438132f207139175457609705ca79560eebcc3c6735571d7a305"
},
"downloads": -1,
"filename": "p4checkout-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e85904398fe9dc0def2e9b187ae12dda",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 9645,
"upload_time": "2023-10-06T19:21:47",
"upload_time_iso_8601": "2023-10-06T19:21:47.736615Z",
"url": "https://files.pythonhosted.org/packages/5e/01/09feb12b3e9dce96e1f57a211057637dd0f9a4ac698744ecc93b98bb7d61/p4checkout-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "716186c3fd850b931cf26716719b50c9a701968d33f52ca819a0cd28f54f58ce",
"md5": "ffc27fb077d2bac0d45a8ba8a41ea810",
"sha256": "ab71a7a158e3fd3d2734ebaf887e558dd8830fecec522aade059dbe09aa2299d"
},
"downloads": -1,
"filename": "p4checkout-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "ffc27fb077d2bac0d45a8ba8a41ea810",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 12744,
"upload_time": "2023-10-06T19:21:49",
"upload_time_iso_8601": "2023-10-06T19:21:49.556240Z",
"url": "https://files.pythonhosted.org/packages/71/61/86c3fd850b931cf26716719b50c9a701968d33f52ca819a0cd28f54f58ce/p4checkout-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-06 19:21:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Dvd848",
"github_project": "p4checkout",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "p4checkout"
}