4. 4
13.1 Server
Task
Streams
• Alleviates
branch
metadata
problem
• Can
be
used
with
streams
or
normal
branches
• Fits
with
task
branching
/
conAnuous
delivery
Shelving
• Lightweight
code
review
• Lightweight
task
management
• Unshelve
to
Branch
• Submit
Shelf
Git
Fusion
• Maintain
big
picture
branch
model
in
Perforce
• Mirror
the
model
to
Git,
rebase
if
desired
• Use
Git
for
task
branches
6. 6
Task Streams
§ Use p4 populate to put data into a task stream.
§ (This command is the best way to put data into any new branch or stream.)
§ Task streams cannot be re-parented.
§ They're tied tightly to the original source.
§ Task streams cannot have children of their own.
§ Multiple users per Task Stream.
§ Task streams can be converted to regular
§ Task streams parented to another stream follow the rules!
§ merge-down copy-up.
7. 7
13.1 Server - Replication
Filtered
ReplicaAon
• Only
take
what
you
need
at
each
site
• Reduce
bandwidth
• Faster
setup
Chained
Replicas
• Have
one
replica
feed
others
• Easily
support
a
larger
build
farm
or
several
satellite
offices
• Only
once
“across
the
ocean”
Git
ReplicaAon
• Fast
local
data
access
• Consistent
push/
pull
• Consistent
security
• Trusted
HA/DR
And of course you can use regular proxies and replicas…
22. 22
Chaining Replicas
22
p4
configure
set
replicaSingapore#P4TARGET=master:1666
p4
configure
set
replicaHK#P4TARGET=replicaSingapore:1666
Configuration
Use common sense
Ask for help when necessary
Master Repository
(California)
Read-Only Replica
(Singapore)
Read-Only Replica
(Hong Kong)
Read-Only Replica
(Singapore)
Read-Only Replica
(Singapore)
23. 23
Filtering Replicas
Configure in server spec
and pull commands
23
>
p4
server
repl
ServerID:
repl
RevisionDataFilter:
//gui/...
>
p4
configure
set
"repl#startup.1=pull
-‐i
1
-‐P
repl"
Singapore Replica
Estonia Replica
Toronto Replica 20 TB
500 GB
50 GB
Master Repository
(US)
500 TB
24. 24
Git Replication
24
Configuration
• Set P4PORT in Git Fusion
configuration to proxy, broker, or
replica
Access control
• Set IP-based rules on Git Fusion
account
FAQ
• Commits are identical across all Git
Fusion instances
25. Upgrading
to commit /
edge
DR Replica
Build Server
Replica
Versioning Service
Small Remote
Office
Large Remote Office
Proxy Service
Forwarding Replica Git Fusion
Main Office
26. Upgrading
to commit /
edge
DR
Replica
Edge Server
(for Build Farm)
Versioning Service
Small Remote
Office
Large Remote Office
Proxy
Service
Edge Server Git Fusion
Main Office
Edge Server
(for Users)
31. 31
Questions?
See Git Fusion in the Demo Area
Follow us
Randy DeFauw: rdefauw@perforce.com, @rdefauw
Charlie McLouth: cmclouth@perforce.com
P4Ideax
Forums