Revision Difference
Dev_Branch#561668
<cat>Play</cat>
## What is the Dev branch?
Dev branch is the next version of Garry's Mod. It contains all the changes that will be included into the game in next update.
## What are the changes?
You can find a full list of changes between the Dev branch and normal version of the game [here](Update_Preview_Changelog) and a live change list [here](https://commits.facepunch.com/r/garrysmod.main).
## Why is this needed?
This is needed for two reasons:
* So that addon developers can adjust to upcoming changes
* So you can test the changes and make sure next update will be less buggy by <page text="reporting bugs">Crash_Reporting</page>
## Can I play on normal servers with this version of the game?
Most of the time, yes. The only possible exception is when an update is about to be released, that would require servers to update before they can be joined again.
It is invaluable for the game developers to have people test the game before the next update is out to make sure nothing breaks, or at the very least not as much.
## Switching Branches⤶
## Switching branches via Steam⤶
You can switch Garry's Mod's branch with the following steps:
1. Open your **Library** in the **Steam** client
2. Open the context menu of **Garry's Mod** with <key> RMB </key>
3. Click on `Properties` to open the settings menu
4. Goto the `Betas` sidebar menu point
5. Select your branch under `Beta Participation`
5. Simply close the menu & wait for the game to update
<upload src="b5608/8dc55b8d7f4e1c7.mp4" size="191085" name="Switching.mp4" />
<note>
You can ignore the `Private Betas` setting, it isn't used by Garry's Mod.
</note>
⤶
<br/>⤶
⤶
## Switching branches via SteamCMD⤶
⤶
If you want to use or have previously used SteamCMD ⤶
to switch branches - most likely if you have dedicated ⤶
server - you will need to use the following command.⤶
⤶
```⤶
app_update <App Id> -beta <Branch Id> validate⤶
```⤶
⤶
```Markdown⤶
┃ Type │ App Id ┃⤶
┠────────┼────────┨⤶
┃ Client │ `4000` ┃⤶
┃ Server │ `4020` ┃⤶
```⤶
⤶
```Markdown⤶
┃ Branch Id │ Branch ┃⤶
┠─────────────┼───────────────────────┨⤶
┃ `NONE` │ Default / main branch ┃⤶
┃ `dev` │ Development branch ┃⤶
```⤶
<br/>
## How can I check the branch of my player?
To check which branch the player is using, you can check the <page>Global Variables</page> `BRANCH` clientside. This can be useful if you are developing something with features that the current branch does not have, such as Chromium features in the `x86-64` branch.
```
if BRANCH ~= "x86-64" then
return
end
```