{{Project|p4tar|curator=Jeff Grills|path=//guest/jeff_grills/p4tar/|download=//guest/jeff_grills/p4tar/|language=Perl| brief=These are two scripts which will pack up changelists on one machine/client and unpack them on another.}} ===About=== '''p4tar''' and '''p4untar''' are two scripts that can pack up a changelist and then unpack it on another machine (or the same one). Uses for "tarring" a changelist include: * Temporarily "shelving" work in progress so that you can retest against clean depot copies of your files. * Moving work in progress from one client machine to another. * Sending work in progress to another user for review without first submitting it to the depot. See also [[P4 Shelve]], which has similar applications but submits the changelist to the depot (in a new branch) rather than creating a client-side tarfile. ===Usage=== '''p4tar [-c #] [-q] [-z] archive_name''' :-c = changelist # :-q = quiet, don't print summary :-z = compress :-i = convert integrates and branches to edits (UNSAFE) '''p4untar [-debug] [-revert] [-z] archive_name''' :-revert = completely revert all changes in this archive (this will DELETE added files) :-c # = changelist :-ld = convert to dos style line-ends :-lu = convert to unix style line-ends :-ln = do not do any line-end conversions :-e = do not extract files, just do edits and adds :-z = uncompress :-d = do not extract files with identical contents :-diff = diff files in archive against client, extract nothing :-unpack = just extract all files into p4tar_unpack/ :-q = quiet - emit no output :-nopipe = disable the use of perl's input pipe ===Example=== C:\test\depot\sam>p4 diff ==== //depot/sam/bar#2 - c:\test\depot\sam\bar ==== 3a4 > This is an edit I'm tarring up. C:\test\depot\sam>perl p4tar.pl -c default test_tar edited: 1 added: 1 deleted: 0 skipped: 0 C:\test\depot\sam>p4 revert ... //depot/sam/bar#2 - was edit, reverted //depot/sam/foo#4 - was add, reverted C:\test\depot\sam>perl p4untar.pl test_tar //depot/sam/bar#2 - file(s) up-to-date. //depot/sam/bar#2 - opened for edit //depot/sam/foo#5 - opened for add edited: 1 added: 1 deleted: 0 skipped: 0 C:\test\depot\sam>p4 diff ==== //depot/sam/bar#2 - c:\test\depot\sam\bar ==== 3a4 > This is an edit I'm tarring up. [[Category:Perforce]]