You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+43-22Lines changed: 43 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,9 +16,9 @@ This plugin is not intended to replace the [Desktop Client](https://docs.plastic
16
16
or [command line interface "cm"](https://docs.unity.com/ugs/en-us/manual/devops/manual/uvcs-cli/version-control-cli).
17
17
It is a complementary tool improving efficiency in your daily workflow with assets in Editor.
18
18
19
-
It automates tracking status of assets, brings common source control tasks inside the Editor, and provides visual diffing of Blueprints.
20
-
It also helps import an existing Unreal Project into source control, with appropriate *ignore.conf* file.
21
-
Since Unreal does not manage C++ source code, but only assets, the plugin is especially useful for GDs and artists.
19
+
It tracks status of assets, most notable locks, brings common source control tasks inside the Editor, including updating, branching and merging, and provides visual diffing of Blueprints.
20
+
It also helps import an existing Unreal Project into source control in a simple operation, with appropriate *ignore.conf* file.
21
+
Since the Unreal Editor does not manage C++ source code, but only assets, the plugin is especially useful for tech designers, level designers and artists in general.
22
22
23
23
## Table of Contents
24
24
@@ -37,6 +37,8 @@ Since Unreal does not manage C++ source code, but only assets, the plugin is esp
37
37
-[Source Control Windows](#source-control-windows)
38
38
-[Redirectors](#redirectors)
39
39
-[Detect Changes on other Branches](#detect-changes-on-other-branches)
40
+
-[Branches](#branches)
41
+
-[SmartLocks](#smartlocks)
40
42
-[Merge conflicts on Blueprints](#merge-conflicts-on-blueprints)
41
43
-[Workflows](#workflows)
42
44
-[Mainline](#mainline)
@@ -121,7 +123,7 @@ Else, if you want to rebuild the plugin for a Blueprint project:
121
123
4. Right-click on your project's **.uproject** file, **Generate Visual Studio project files**.
122
124
5. In Visual Studio, **Reload All** and **Build Solution** in **Development Editor** mode. That's it, the plugin is built (resulting dlls are located in _Plugins\UEPlasticPlugin\Binaries\Win64_).
123
125
124
-
To release the plugin, zip the _Plugins_ folder. But before that, remove the _Intermediate_, _Screenshots_ and _.git_ folders, and also the big*.pdb files in _Plugins\UEPlasticPlugin\Binaries\Win64_.
126
+
To release and redistribute the plugin, zip the _Plugins_ folder. But before that, remove the _Intermediate_, _Screenshots_ and _.git_ folders, and optionnaly the heavier*.pdb files in _Plugins\UEPlasticPlugin\Binaries\Win64_.
125
127
126
128
### Project Setup
127
129
@@ -400,7 +402,29 @@ Warning when trying to checkout an asset that has been modified in another branc
400
402
Warning when trying to modify an asset that has been modified in another branch:
401
403

402
404
403
-
### SmartLocks
405
+
#### Branches
406
+
407
+
The plugin now offers full support for branches, including the ability to create, switch to and merge branches from within the Unreal Editor,
408
+
reloading assets and the current level as appropriate.
[Meet Smart Locks, a new way to reduce merge conflicts with Unity Version Control](https://blog.unity.com/engine-platform/unity-version-control-smart-locks)
406
430
@@ -413,8 +437,6 @@ In case you ever use branches with binary assets without relying on exclusive ch
413
437
you will encounter cases of merge conflicts on binary assets.
414
438
You have to trigger the resolve in the Unity Version Control GUI, but then skip it without saving changes in order to let the Editor present you with a visual diff.
415
439
416
-
TODO: take screenshots of Unity Version Control GUI
417
-
418
440
Branch explorer showing the merge pending with an asset in conflict:
419
441

420
442
@@ -450,23 +472,24 @@ If you try to use a full workspace (with Unity Version Control GUI instead of Gl
450
472
451
473
##### Task branches
452
474
453
-
Handling of binary assets works best in only one branch (regardless of the source control used)
454
-
since they cannot be merged, and since they increase the cost (time/bandwidth) of switching between branches.
475
+
Handling of binary assets typically works best when working all together in a single main branch (regardless of the source control used).
476
+
This is because binary files cannot be merged, and since they increase the cost (time/bandwidth) of switching between branches.
455
477
456
-
But with Unity Version Control you can use branches that are easy and cheap to create and merge:
457
-
using them for code will enable you to leverage the built-in code review on these branches.
478
+
But with Unity Version Control you can use branches that are easy and cheap to create and merge.
479
+
Using them for code will enable you to leverage the built-in code review on these branches.
480
+
And in combination with [SmartLocks](#smartlocks) and the full in-Editor [Branches](#branches) support,
481
+
you can now use them safely for binary assets as well!
458
482
459
-
Note that some studios also use task branches for assets, and include them in their code reviews.
483
+
Note that some studios have always been using task branches for assets, and included them in their code reviews.
460
484
Unity Version Control locks extend to all branches, preventing two people from working at the same time on the same assets regardless of the branch they are one.
461
-
The plugin also offers [some branch support to warn users if an asset has been changed in another branch](#branches-support).
485
+
The plugin also offers full branch support [and warn users if an asset has been changed in another branch](#branches-support).
462
486
463
487
To use branches, you would need to also close the Editor before switching from a branch to another, and before merging a branch into another:
464
488
465
-
1. create a child branch from main using the Desktop Client
466
-
2. switch to it, updating the workspace, with the Unreal Editor closed
467
-
3. start the Editor, make modifications and checkout assets
468
-
4. then check-in the assets (remember to save everything, or close the Editor to make sure of it)
469
-
5. close the Editor
489
+
1. create a child branch from main using in-Editor Branches window
490
+
2. switch to it immediately, updating the workspace, and reloading assets
491
+
3. make modifications and checkout assets
492
+
4. then check-in the assets (remember to save everything, the toolbar now has a button to track the number of unsaved assets)
470
493
6. create a code review from the branch
471
494
7. create a new task branch from main or go back to main to merge branches
472
495
@@ -538,10 +561,11 @@ eg:
538
561
539
562
This version here is the development version, so it always contains additional fixes, performance improvements or new features compared to the one integrated in Engine.
540
563
541
-
### Version 1.8.3 2023/10/12 for UE 5.0/5.1/5.2/5.3 and UE 4.27
564
+
### Version 1.9.0 2023/12/21 for UE 5.0/5.1/5.2/5.3 and UE 4.27
542
565
- manage connection to the server
543
566
- display status icons to show controlled/checked-out/added/deleted/private/changed/ignored/not-up-to-date files
544
567
- Smart Locks: display locked files, retained locks, on what branch and by who
568
+
- Branches: manage branches from a dockable window. Create, rename, switch, merge and delete.
545
569
- Detect Changes on other Branches, to check outdated files vs. remote across multiple branches
546
570
- show current branch name and CL in status text
547
571
- add, duplicate a file
@@ -568,7 +592,6 @@ This version here is the development version, so it always contains additional f
568
592
- xlinks sub-repositories (for Plugins for instance)
569
593
- Toggle verbose logs from the Source Control settings UI
570
594
- Run 'cm' CLI commands directly from the Unreal Editor Console, Blueprints of C++ code.
571
-
- Use custom icons on UE5.1 for files locally Changed (not checked-out), locally Deleted, Conflicted and Ignored
572
595
- Supported on Windows and Linux
573
596
574
597
### Feature Requests
@@ -589,8 +612,6 @@ This version here is the development version, so it always contains additional f
589
612
590
613
### Features not supported
591
614
Some are reserved for internal use by Epic Games with Perforce only:
592
-
- Branch and Merge workflow: not handled by the Unreal Editor
593
-
- Directory source control status: not handled by the Unreal Editor
594
615
- tags: get labels (used for crash when the full Engine is under Perforce)
595
616
- annotate: blame (used for crash when the full Engine is under Perforce)
0 commit comments