public static DAVBaselineInfo getBaselineInfo(DAVConnection connection, DAVRepository repos, String path, long revision,
												  boolean includeType, boolean includeRevision, DAVBaselineInfo info) throws SVNException {
		DAVElement[] properties = includeRevision ? DAVElement.BASELINE_PROPERTIES : new DAVElement[] {DAVElement.BASELINE_COLLECTION};
		DAVProperties baselineProperties = getBaselineProperties(connection, repos, path, revision, properties);

		info = info == null ? new DAVBaselineInfo() : info;
		info.baselinePath = baselineProperties.getURL();
		SVNPropertyValue baseValue = baselineProperties.getPropertyValue(DAVElement.BASELINE_COLLECTION);
		info.baselineBase = baseValue == null ? null : baseValue.getString();
		info.baseline = baselineProperties.getOriginalURL();
		if (info.baselineBase == null) {
			SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.RA_DAV_REQUEST_FAILED, "'DAV:baseline-collection' not present on the baseline resource");
			SVNErrorManager.error(err, SVNLogType.NETWORK);
		}
//        info.baselineBase = SVNEncodingUtil.uriEncode(info.baselineBase);
		if (includeRevision) {
			SVNPropertyValue version = baselineProperties.getPropertyValue(DAVElement.VERSION_NAME);
			if (version == null) {
				SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.RA_DAV_REQUEST_FAILED, "'DAV:version-name' not present on the baseline resource");
				SVNErrorManager.error(err, SVNLogType.NETWORK);
			}
			try {
				info.revision = Long.parseLong(version.getString());
			} catch (NumberFormatException nfe) {
				SVNErrorManager.error(SVNErrorMessage.create(SVNErrorCode.RA_DAV_MALFORMED_DATA, nfe), SVNLogType.NETWORK);
			}
		}
		if (includeType) {
			Map propsMap = new SVNHashMap();
			path = SVNPathUtil.append(info.baselineBase, info.baselinePath);
			HTTPStatus status = getProperties(connection, path, 0, null, new DAVElement[] {DAVElement.RESOURCE_TYPE}, propsMap);
			if (status.getError() != null) {
				SVNErrorManager.error(status.getError(), SVNLogType.NETWORK);
			}
			if (!propsMap.isEmpty()) {
				DAVProperties props = (DAVProperties) propsMap.values().iterator().next();
				info.isDirectory = props != null && props.isCollection();
			}
		}
		return info;
	}
Added for ngrinder.
Handle different branch concept in svn and github.
ngrinder-controller/src/main/java/org/tmatesoft/svn/core/internal/io/dav/DAVUtil.java