Синхронизация настроек PhpStorm с помощью Git
![Синхронизация настроек PhpStorm с помощью Git](https://tretyakov.net/wp-content/uploads/2023/06/gyt-sync.gif)
В IDE от JetBrains таких как PhpStorm, PyCharm, RubyMine есть несколько способов синхронизации настроек между разными установками программы, например на домашнем и офисном компьютере. Так же есть возможность дать пользоваться вашими настройками всем членам команды просто поделившись с ними ссылкой на репозиторий.
Ниже показан способ синхронизации настроек через git репозиторий.
Первое, что нужно сделать, это создать сам репозиторий для хранения настроек на Github. Я создаю приватный репозиторий, например phpstorm_settings:
![Создание приватного репозитория на Github](https://tretyakov.net/wp-content/uploads/2023/06/1-4.png)
Далее в IDE (PhpStorm, PyCharm, RubyMine) настройками которой нужно поделиться с другими экземплярами заходим в File → Settings Repository и добавляем url созданного выше репозитория.
![Добавляем url репозитория для синхронизации настроек phpstorm](https://tretyakov.net/wp-content/uploads/2023/06/2-3.png)
Настройки можно объединить, перезаписать локальные или удаленные (в репозитории). У нас репозиторий пустой, поэтому чтобы отправить туда наши настройки выбираем Overwrite Remote.
Нас попросит ввести token. Для того чтобы его создать идем на Гитхаб в настройки аккаунта, далее выбираем Developer settings -> Personal access tokens, ставим галочку у repo
и нажимаем Generate new token.
![Создание токена на Гитхабе](https://tretyakov.net/wp-content/uploads/2023/06/3-2-1024x626.png)
Копируем token и вставляем его в IDE.
Теперь настройки синхронизированы с помощью git и будут обновляться автоматически.
Автоматическую синхронизацию можно отключить и выполнять ее вручную с помощью меню VCS → Sync Settings. Для этого нужно перейти в Settings → Tools → Settings Repository и убрать галочку Auto Sync.
![Отключение автоматической синхронизации настроек](https://tretyakov.net/wp-content/uploads/2023/06/4-2-1024x637.png)
Здесь же можно добавить дополнительные репозитории с настройками, но они будут доступны только для чтения. Вы можете получать настройки из них, но не сможете отправлять в них своих настройки.