diff --git a/.idea/modules.xml b/.idea/modules.xml
index ae36a87dbf69..0322352e9df9 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -198,6 +198,7 @@
+
diff --git a/build/scripts/utils.gant b/build/scripts/utils.gant
index 4761f160a223..b090f7a84dd5 100644
--- a/build/scripts/utils.gant
+++ b/build/scripts/utils.gant
@@ -262,6 +262,7 @@ binding.setVariable("platformApiModules", [
"structure-view-api",
"usageView",
"vcs-api",
+ "vcs-api-core",
"vcs-log-api",
"vcs-log-graph-api",
"xdebugger-api",
diff --git a/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java b/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
index bdd9304e9d88..7266e344c72f 100644
--- a/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
+++ b/platform/vcs-api/src/com/intellij/vcsUtil/VcsUtil.java
@@ -577,18 +577,6 @@ public class VcsUtil {
return files;
}
- public static boolean caseDiffers(final String s1, final String s2) {
- String s1Trimmed = s1.trim();
- String s2Trimmed = s2.trim();
-
- if (File.separatorChar != '/') {
- s1Trimmed = s1Trimmed.replace(File.separatorChar, '/');
- s2Trimmed = s2Trimmed.replace(File.separatorChar, '/');
- }
-
- return (! s1Trimmed.equals(s2Trimmed)) && s1Trimmed.equalsIgnoreCase(s2Trimmed);
- }
-
private static final String ANNO_ASPECT = "show.vcs.annotation.aspect.";
//public static boolean isAspectAvailableByDefault(LineAnnotationAspect aspect) {
// if (aspect.getId() == null) return aspect.isShowByDefault();
diff --git a/platform/vcs-api/src/com/intellij/lifecycle/PeriodicalTasksCloser.java b/platform/vcs-api/vcs-api-core/src/com/intellij/lifecycle/PeriodicalTasksCloser.java
similarity index 98%
rename from platform/vcs-api/src/com/intellij/lifecycle/PeriodicalTasksCloser.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/lifecycle/PeriodicalTasksCloser.java
index bbb4847fbc64..3b6a7ff2a5c6 100644
--- a/platform/vcs-api/src/com/intellij/lifecycle/PeriodicalTasksCloser.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/lifecycle/PeriodicalTasksCloser.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/FilePath.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/FilePath.java
similarity index 98%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/FilePath.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/FilePath.java
index 90fd92f2e78e..1ca489c0d128 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/FilePath.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/FilePath.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsException.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsException.java
similarity index 98%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/VcsException.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsException.java
index 5a72bfe1fba6..dacf4e654f5f 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsException.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsException.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsKey.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsKey.java
similarity index 96%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/VcsKey.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsKey.java
index f3a507cf8e56..4e2871b3f539 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/VcsKey.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/VcsKey.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/Change.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/Change.java
similarity index 96%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/changes/Change.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/Change.java
index 8e300bd2a291..b1d8978eea68 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/Change.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/Change.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,7 +25,7 @@ import com.intellij.openapi.vcs.FileStatus;
import com.intellij.openapi.vcs.VcsBundle;
import com.intellij.openapi.vcs.impl.VcsPathPresenter;
import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.vcsUtil.VcsUtil;
+import com.intellij.vcsUtil.VcsFilePathUtil;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.Nullable;
@@ -120,7 +120,8 @@ public class Change {
}
if ((! Comparing.equal(myBeforeRevision.getFile(), myAfterRevision.getFile())) ||
- ((! SystemInfo.isFileSystemCaseSensitive) && VcsUtil.caseDiffers(myBeforeRevision.getFile().getPath(), myAfterRevision.getFile().getPath()))) {
+ ((! SystemInfo.isFileSystemCaseSensitive) && VcsFilePathUtil
+ .caseDiffers(myBeforeRevision.getFile().getPath(), myAfterRevision.getFile().getPath()))) {
myType = Type.MOVED;
return myType;
}
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ContentRevision.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/ContentRevision.java
similarity index 97%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/changes/ContentRevision.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/ContentRevision.java
index af21b167041f..de5944ac9b3c 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/ContentRevision.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/ContentRevision.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/MergeTexts.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/MergeTexts.java
similarity index 96%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/changes/MergeTexts.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/MergeTexts.java
index 18423d8ad490..16ed06a00b41 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/changes/MergeTexts.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/changes/MergeTexts.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java
similarity index 95%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java
index ffcedbb456c2..52bae307b01e 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/LongRevisionNumber.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2012 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java
similarity index 98%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java
index 4647ecac78af..9d5851da6889 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/history/VcsRevisionNumber.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java
similarity index 97%
rename from platform/vcs-api/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java
index b8c239f84a71..9985cf77518f 100644
--- a/platform/vcs-api/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/openapi/vcs/impl/VcsPathPresenter.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/src/com/intellij/vcsUtil/Rethrow.java b/platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/Rethrow.java
similarity index 95%
rename from platform/vcs-api/src/com/intellij/vcsUtil/Rethrow.java
rename to platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/Rethrow.java
index dc2e3b9409bd..6c42caaa3126 100644
--- a/platform/vcs-api/src/com/intellij/vcsUtil/Rethrow.java
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/Rethrow.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2010 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/VcsFilePathUtil.java b/platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/VcsFilePathUtil.java
new file mode 100644
index 000000000000..b6992f53ab0c
--- /dev/null
+++ b/platform/vcs-api/vcs-api-core/src/com/intellij/vcsUtil/VcsFilePathUtil.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.intellij.vcsUtil;
+
+import java.io.File;
+
+public class VcsFilePathUtil {
+ public static boolean caseDiffers(final String s1, final String s2) {
+ String s1Trimmed = s1.trim();
+ String s2Trimmed = s2.trim();
+
+ if (File.separatorChar != '/') {
+ s1Trimmed = s1Trimmed.replace(File.separatorChar, '/');
+ s2Trimmed = s2Trimmed.replace(File.separatorChar, '/');
+ }
+
+ return (! s1Trimmed.equals(s2Trimmed)) && s1Trimmed.equalsIgnoreCase(s2Trimmed);
+ }
+}
diff --git a/platform/vcs-api/vcs-api-core/vcs-api-core.iml b/platform/vcs-api/vcs-api-core/vcs-api-core.iml
new file mode 100644
index 000000000000..434160533f3b
--- /dev/null
+++ b/platform/vcs-api/vcs-api-core/vcs-api-core.iml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/platform/vcs-api/vcs-api.iml b/platform/vcs-api/vcs-api.iml
index 685d664dd28f..d6c7d2eb1b67 100644
--- a/platform/vcs-api/vcs-api.iml
+++ b/platform/vcs-api/vcs-api.iml
@@ -9,6 +9,7 @@
+
diff --git a/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogSettings.java b/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogSettings.java
index a370379b4d77..f382e23cf480 100644
--- a/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogSettings.java
+++ b/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogSettings.java
@@ -1,10 +1,24 @@
+/*
+ * Copyright 2000-2014 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
package com.intellij.vcs.log;
-import com.intellij.openapi.components.StoragePathMacros;
/**
*
Vcs Log user settings, which may have a UI representation, or be implicitly selected based on user actions.
- * Most of the settings are workspace-specific, i. e. they are stored in {@link StoragePathMacros#WORKSPACE_FILE workspace.xml}.
+ * Most of the settings are workspace-specific, i. e. they are stored in {@link com.intellij.openapi.components.StoragePathMacros#WORKSPACE_FILE workspace.xml}.
*
* @author Kirill Likhodedov
*/
diff --git a/platform/vcs-log/api/vcs-log-api.iml b/platform/vcs-log/api/vcs-log-api.iml
index bdbe62ba331d..92d746615afa 100644
--- a/platform/vcs-log/api/vcs-log-api.iml
+++ b/platform/vcs-log/api/vcs-log-api.iml
@@ -10,8 +10,9 @@
-
+
+
diff --git a/plugins/git4idea/src/git4idea/GitContentRevision.java b/plugins/git4idea/src/git4idea/GitContentRevision.java
index 68fcb59febf2..8dd85b167980 100644
--- a/plugins/git4idea/src/git4idea/GitContentRevision.java
+++ b/plugins/git4idea/src/git4idea/GitContentRevision.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ import com.intellij.openapi.vcs.history.VcsRevisionNumber;
import com.intellij.openapi.vcs.impl.ContentRevisionCache;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.vcsUtil.VcsFilePathUtil;
import com.intellij.vcsUtil.VcsFileUtil;
import com.intellij.vcsUtil.VcsUtil;
import git4idea.util.GitFileUtils;
@@ -168,7 +169,7 @@ public class GitContentRevision implements ContentRevision {
boolean isDeleted, boolean canBeDeleted, boolean unescapePath) throws VcsException {
final String absolutePath = makeAbsolutePath(vcsRoot, path, unescapePath);
FilePath file = isDeleted ? VcsUtil.getFilePathForDeletedFile(absolutePath, false) : VcsUtil.getFilePath(absolutePath, false);
- if (canBeDeleted && (! SystemInfo.isFileSystemCaseSensitive) && VcsUtil.caseDiffers(file.getPath(), absolutePath)) {
+ if (canBeDeleted && (! SystemInfo.isFileSystemCaseSensitive) && VcsFilePathUtil.caseDiffers(file.getPath(), absolutePath)) {
// as for deleted file
file = FilePathImpl.createForDeletedFile(new File(absolutePath), false);
}