diff --git a/Sources/AnalyticsGen/Providers/Forgejo/ForgejoRemoteRepoProvider.swift b/Sources/AnalyticsGen/Providers/Forgejo/ForgejoRemoteRepoProvider.swift index d80235b..bceeeca 100644 --- a/Sources/AnalyticsGen/Providers/Forgejo/ForgejoRemoteRepoProvider.swift +++ b/Sources/AnalyticsGen/Providers/Forgejo/ForgejoRemoteRepoProvider.swift @@ -41,6 +41,13 @@ struct ForgejoRemoteRepoProvider: RemoteRepoProvider { case .tag(let name), .branch(let name): try shell("git clone --depth 1 -b \(name) \(gitRepositoryURL) \(repositoryPath)") + if ProcessInfo.processInfo.environment["ANALYTICS_GEN_EXPERIMENTAL_MERGE"] == "true" && + ProcessInfo.processInfo.environment["CHANGE_TARGET"] == "develop" + { + Log.debug("Trying to merge master into user branch") + try shell("cd \(repositoryPath) && git fetch --depth 1 origin refs/heads/master:refs/remotes/origin/master") + try shell("cd \(repositoryPath) && git merge origin/master --allow-unrelated-histories --no-edit") + } case .commit(let sha): try shell("git clone \(gitRepositoryURL) \(repositoryPath)")