1
0
wanghongkai преди 5 години
родител
ревизия
50d28d3086
променени са 1 файла, в които са добавени 7 реда и са изтрити 1 реда
  1. 7 1
      src/main/java/cn/seecoder/paas/service/impl/EnvironmentServiceImpl.java

+ 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();