Package jetbrains.buildServer.vcs
Interface VcsSupportCore
-
- All Superinterfaces:
VcsSupportConfig
- All Known Implementing Classes:
ServerVcsSupport
,VcsSupport
public interface VcsSupportCore extends VcsSupportConfig
The entry point for custom VCS support API- Since:
- 4.5
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default boolean
allowSourceCaching()
default boolean
isCurrentVersionExpensive()
If the obtaining current version is an expensive operation (see CollectSingleStatePolicy#getCurrentVersion(VcsRoot)}) the implementation may optimize performance by returningtrue
.boolean
sourcesUpdatePossibleIfChangesNotFound(VcsRoot root)
Must return true if source files in the build checkout directory can be updated even if no changes were detected between some versions.-
Methods inherited from interface jetbrains.buildServer.vcs.VcsSupportConfig
describeVcsRoot, getCheckoutProperties, getDefaultVcsProperties, getDisplayName, getName, getServerCheckoutProperties, getVcsPropertiesProcessor, getVcsSettingsJspFilePath, getVersionComparator, getVersionDisplayName, isAgentSideCheckoutAvailable, isDAGBased, isDAGBasedVcs
-
-
-
-
Method Detail
-
isCurrentVersionExpensive
default boolean isCurrentVersionExpensive()
If the obtaining current version is an expensive operation (see CollectSingleStatePolicy#getCurrentVersion(VcsRoot)}) the implementation may optimize performance by returningtrue
. In this case collecting changes for the current version will be done without specifying upper version. OtherwiseCollectSingleStatePolicy.getCurrentVersion(VcsRoot)
will be called first and then the result will be passed to the change collector as the upper version.- Returns:
- true if the obtaining current version is an expensive operation.
- See Also:
CollectChangesPolicy
-
allowSourceCaching
default boolean allowSourceCaching()
- Returns:
- true if you want TeamCity to use its internal source cache to reuse patches retrieved earlier and minimize patch building. Returning false may have sense if the underlying version control system has its own effective local caching system (e.g. Mercurial).
-
sourcesUpdatePossibleIfChangesNotFound
boolean sourcesUpdatePossibleIfChangesNotFound(@NotNull VcsRoot root)
Must return true if source files in the build checkout directory can be updated even if no changes were detected between some versions. This is possible for example if VCS support plugin can't detect changes when a tag/label is moved. Note that if true is returned for some VCS root, plugin should be able to correctly build patch for this VCS root.
For example, if plugin performs changes collecting in the buildPatch method and then creates patch by detected changes, it should create clean patch for VCS root for which it returned true in this method.- Parameters:
root
- VCS root- Returns:
- see above
-
-