Difference between revisions of "Version control"

Jump to navigation Jump to search
938 bytes added ,  11:44, 16 April 2021
imported>Thingy Person
imported>Thingy Person
Line 112: Line 112:


==Perforce Integration==
==Perforce Integration==
Perforce is a 3rd Party Version Management software suite, available for free to small groups. When set up with the settings documented here, Perforce works hand-in-hand with the Version Control system to keep backups of previous iterations of scripts, and allow for each individual working on a project to pull the latest versions of all project scripts from the Perforce server. Perforce also manages DialogueView files, if present. In addition to storing versioned copies, the Creation Kit will update formids on all stored scripts and dialogue views that would otherwise change upon merge to an .esm.
Perforce is a 3rd Party Version Management software suite, available for free to small groups. When set up with the settings documented here, Perforce works hand-in-hand with the Version Control system to keep backups of previous iterations of scripts, and allow for each individual working on a project to pull the latest versions of all project scripts from the Perforce server. Perforce also manages DialogueView files, if present. In addition to storing versioned copies, the Creation Kit will update formids on all stored scripts and dialogue views that would otherwise change upon merge to an .esm. With Perforce integration unlocked, it is possible for networked teams working off of a master server using just the Creation Kit and Perforce from a common server for version control.


With Perforce integration unlocked, it is possible for networked teams working off of a master server using just the Creation Kit and Perforce from a common server for version control.  
Skyrim mod projects, however, will almost certainly never use Perforce in this way, and will just use general project management to avoid conflicts and xEdit to resolve conflicts in plugins before merge where possible. That said, the person doing the merges will still benefit from installing and setting up Perforce: automatic renaming and recompiling of Papyrus fragment scripts, and renaming of DialogueViews. Without Perforce, these external files are not touched at all, but the merged forms will still refer to renamed script names as a result of Version Control; unless renamed and recompiled manually, or automatically with Perforce, they will then not work in-game. DialogueViews are determined by FormID so will not be recognized by the CK either after merge, unless renamed manually, or automatically using Perforce. Setting up Perforce is therefore necessary to avoid having to manually edit each of these files after a merge.


===Setup===
===Setup===

Navigation menu