Search code examples
gitbranchperforce

Is Perforce Stream works same as git branch?


I'm using perforce first time.

I want to make branch which works as git, but when I create task stream, it looks like full copy from server.

Git branch doesn't copy full code, and it works very fast.

Am I knowing something wrong with perforce stream?


Solution

  • Perforce and git have entirely different data models.

    One key difference is that in Perforce, each file has its own branching history. This has both benefits (you can merge individual files and have each file's merge history tracked independently) and drawbacks (since branching is all done at the file level, creating a branch means creating individual database records per file).

    Note that branches in Perforce only duplicate the database records (which are a small/constant size per file), not the actual file content, which is deduplicated on the back end (again, per individual file/revision).