No description
Find a file
Brian Ernst 85de0ec1ca I added dry-run to p4SyncMissing some time ago; I don't remember if I finished it, but I don't have time to test, and don't want to lose it, so submitting it. Wow is this a rough testing branch or what.
Add TODOs.
Fix some directory bugs when running scripts with a cwd not in the p4 workspace. TODO: make sure all scripts and options work when run outside p4 workspace.
If user isn't logged in you can get weird errors later on in the pipeline, and without extra manually added prints, you wouldn't know you just need to log in. Added TODO: about detecting if we need to do a p4 login.
Some of my stuff seems to have stopped working with later version of Python/p4, had to update string to byte string; no doubt more of these issues hiding.
Haven't tested on python 2 in a while, do not consider these working there.
2026-03-05 15:27:28 -08:00
.gitignore Fixed up path limitation issue with p4. 2015-06-08 14:50:07 -06:00
p4GetCLDetails.py I added dry-run to p4SyncMissing some time ago; I don't remember if I finished it, but I don't have time to test, and don't want to lose it, so submitting it. Wow is this a rough testing branch or what. 2026-03-05 15:27:28 -08:00
p4Helper.py I added dry-run to p4SyncMissing some time ago; I don't remember if I finished it, but I don't have time to test, and don't want to lose it, so submitting it. Wow is this a rough testing branch or what. 2026-03-05 15:27:28 -08:00
p4RemoveUnversioned.py I added dry-run to p4SyncMissing some time ago; I don't remember if I finished it, but I don't have time to test, and don't want to lose it, so submitting it. Wow is this a rough testing branch or what. 2026-03-05 15:27:28 -08:00
p4Sync.py Updated time.clock to time.time, since former was deprecated. 2020-08-12 14:49:57 -07:00
p4SyncMissingFiles.py I added dry-run to p4SyncMissing some time ago; I don't remember if I finished it, but I don't have time to test, and don't want to lose it, so submitting it. Wow is this a rough testing branch or what. 2026-03-05 15:27:28 -08:00
README.md Minor cleanup. 2020-08-12 15:05:50 -07:00

p4Tools

Perforce script tools for:

  • Remove unversioned files
  • Parallel sync missing files
  • Parallel sync everything
  • Etc.

Script is in beta, works well, but still going through continued testing. There are a few stats at the end, will be putting in more, like number of files/directories checked, so you have an idea how much work was required. One of the reasons this is still in testing is because sometimes the end of the script gets stuck when closing Console logging; I haven't had the time or care to fix this, so it's not considered stable or production ready for at least that reason.

Concerning benchmarks: I used to have a HDD, now a SSD. So I can't provide valid comparisons to the old numbers until I do them on a computer with a HDD. That said, this single worker implementation runs faster than the old multi-threaded version. Can't wait to further update it, will only continue to get faster.

This script does parse .p4ignore ignore files, compiles the fields as regex, and scans every directory and file against the local and parent .p4ignore files. This is my first time doing something like this, and I just realized this isn't actually correct; I need to update how things are ignored to follow the spec, since it's not straight up regex. I need to re-add this to the newer script.

Files are currently permanently deleted, so use this at your own risk.