Started virtual_exclusion.sh v1.0.1 at Fri Feb 3 12:24:01 EST 2017. ReproDir=/tmp/virtual_exclusions ============================================================================== Scenario: Virtual Exclusion Preliminary info: Show versions of p4/p4d on the PATH: Executing command: p4 -V Perforce - The Fast Software Configuration Management System. Copyright 1995-2016 Perforce Software. All rights reserved. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/) See 'p4 help legal' for full OpenSSL license information Version of OpenSSL Libraries: OpenSSL 1.0.2j 26 Sep 2016 Rev. P4/DARWIN90X86_64/2016.2/1468155 (2016/11/28). Executing command: p4d -V Perforce - The Fast Software Configuration Management System. Copyright 1995-2016 Perforce Software. All rights reserved. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/) See 'p4 help legal' for full OpenSSL license information Version of OpenSSL Libraries: OpenSSL 1.0.2j 26 Sep 2016 This product includes software developed by the OpenLDAP Foundation (http://www.openldap.org/) This product includes software developed by Computing Services at Carnegie Mellon University: Cyrus SASL (http://www.cmu.edu/computing/) See 'p4 help legal' for full Cyrus SASL and OpenLDAP license information Version of OpenLDAP Libraries: 2.4.44 Version of Cyrus SASL Libraries: 2.1.26 Rev. P4D/DARWIN90X86_64/2016.2/1468155 (2016/11/28). License: none Preliminary setup: Spin up a local repo. Executing command: p4 init -C0 -n Server ttyler-dvcs-1486142641 saved. Making and populating sample source tree in main. Executing command: mkdir -p project/tests goofy_test mac_test Executing command: p4 switch main Executing command: p4 rec //stream/main/goofy_test/main.c#1 - opened for add //stream/main/mac_test/main.c#1 - opened for add //stream/main/project/main.c#1 - opened for add //stream/main/project/tests/BigDataFile.txt#1 - opened for add Executing command: p4 submit -d AddedSourceTree. Submitting change 1. Locking 4 files ... add //stream/main/goofy_test/main.c#1 add //stream/main/mac_test/main.c#1 add //stream/main/project/main.c#1 add //stream/main/project/tests/BigDataFile.txt#1 Change 1 submitted. Showing files in main, big data stuff is here. goofy_test/main.c mac_test/main.c project/main.c project/tests/BigDataFile.txt Creating virtual stream to exclude big test data. Stream //stream/mac_view saved. Switching to mac_view stream. Executing command: p4 switch mac_view Showing files in mac_view, no big data stuff here. mac_test/main.c project/main.c Next create and populate a dev stream parented directly by main. Stream //stream/dev saved. Populate the new dev stream. branch //stream/dev/goofy_test/main.c#1 branch //stream/dev/mac_test/main.c#1 branch //stream/dev/project/main.c#1 branch //stream/dev/project/tests/BigDataFile.txt#1 4 files branched (change 2). This dev stream, parented directly by main, branched everything. Next create a dev stream parented by the mac_view virtual stream. Stream //stream/mac_dev saved. Populate the new mac_dev stream. branch //stream/mac_dev/mac_test/main.c#1 branch //stream/mac_dev/project/main.c#1 2 files branched (change 3). As expected, big data stuff is not in the dev stream.