Populate a mainline stream
Now that you’ve created a stream, you can populate it with files. There are two ways to populate a mainline stream:
- Add files from the local filesystem.
- Branch files from another depot.
In this tutorial, we demonstrate populating by adding files. For information on populating by branching from another depot, see Branch from other depots.
To add files to the mainline stream, copy the files and folders to the
workspace root directory and then mark them for add with the
Copy the files and folders to the workspace root directory.
In this example, we add all files residing in a directory named
On UNIX and OSX
$ cp /Users/bruno/repository/* /Users/bruno/tutorial
$ copy C:\Users\bruno\repository\* C:\Users\bruno\tutorial
Change into the client workspace root directory.
On UNIX and OSX
$ cd /Users/bruno/tutorial
$ cd C:\User\bruno\tutorial
Mark the files for add.
$ p4 add *
This creates a default
changelist, which you will use when you submit to the depot the file you added to your workspace. For more information on changelists, see Changelist-related tasks.
Submit the added files.
To populate the stream, submit the default changelist in which the files are open for add.
$ p4 submit
Helix server opens the
change specificationin an editor:
# A Perforce Change Specification. # # Change: The change number. 'new' on a new changelist. # Date: The date this specification was last modified. # Client: The client on which the changelist was created. Read-only. # User: The user who created the changelist. # Status: Either 'pending' or 'submitted'. Read-only. # Type: Either 'public' or 'restricted'. Default is 'public'. # Description: Comments about the changelist. Required. # ImportedBy: The user who fetched or pushed this change to this server. # Identity: Identifier for this change. # Jobs: What opened jobs are to be closed by this changelist. # You may delete jobs from this list. (New changelists only.) # Files: What opened files from the default changelist are to be added # to this changelist. You may delete files from this list. # (New changelists only.) Change: new Client: bruno_ws User: bruno Status: new Description: <enter description here> Files: //JamCode/main/file1.cc # add //JamCode/main/file1.h # add //JamCode/main/file1.txt # add //JamCode/main/file2.cc # add //JamCode/main/file2.h # add //JamCode/main/file2.txt # add //JamCode/main/file3.cc # add //JamCode/main/file3.h # add //JamCode/main/file3.txt # add
Enter a description under
Description and then save your
changes, to store the files you added in the
depot. Something like the following output is displayed:
Change 1 created with 9 open file(s). Submitting change 1. Locking 9 files ... add //JamCode/main/file1.cc#1 add //JamCode/main/file1.h#1 add //JamCode/main/file1.txt#1 add //JamCode/main/file2.cc#1 add //JamCode/main/file2.h#1 add //JamCode/main/file2.txt#1 add //JamCode/main/file3.cc#1 add //JamCode/main/file3.h#1 add //JamCode/main/file3.txt#1 Change 1 submitted.
The files you added are now stored in the Helix server depot.