wanghongkai пре 5 година
родитељ
комит
50d28d3086

+ 7 - 1
src/main/java/cn/seecoder/paas/service/impl/EnvironmentServiceImpl.java

@@ -361,7 +361,13 @@ public class EnvironmentServiceImpl implements EnvironmentService {
                 try {
                     Path directory = Files.createTempDirectory("seecoder-paas-");
                     Git git = gitApi.clone(application.getGitUrl(), directory.toString());
-                    git.reset().setMode(ResetCommand.ResetType.HARD).setRef(result.getBuildTypeValue()).call();
+                    try {
+                        // 尝试切换分支
+                        git.checkout().setCreateBranch(false).setName(result.getBuildTypeValue()).call();
+                    } catch (Exception gitException) {
+                        // 否则尝试commit
+                        git.reset().setMode(ResetCommand.ResetType.HARD).setRef(result.getBuildTypeValue()).call();
+                    }
                     if (Files.exists(Paths.get(directory.toString(), "Dockerfile"))) {
                         String imageTag = String.valueOf(new Date().getTime());
                         StringBuilder sb = new StringBuilder();