public void Start() { _initRepository.Init(RepoDirectory); CreateGitIgnore(); using var repo = _repositoryCheckouts.Get(RepoDirectory); StageIfExists(GitIgnorePath, repo.Repository); StageIfExists(PipelineSettings, repo.Repository); StageIfExists(GuiSettings, repo.Repository); try { repo.Repository.Commit("Settings changed"); } catch (EmptyCommitException) { } }
public void Persist() { if (!_hasBeenRetrieved) { return; } ReflectionSettings?.Bundle?.Settings?.ForEach(vm => { vm.Persist(); _initRepository.Init(vm.SettingsFolder); using var repo = _repoCheckouts.Get(vm.SettingsFolder); repo.Repository.Stage(vm.SettingsSubPath); try { repo.Repository.Commit("Settings changed"); } catch (EmptyCommitException) { } }); }