sequences.add(ours); sequences.add(theirs); MergeResult<S> result = new MergeResult<>(sequences); result.add(1, 0, 0, ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, theirs.size(), ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); return result; } else if (theirs.size() == 0) { result.add(1, 0, ours.size(), ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, 0, ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(2, 0, 0, ConflictState.NO_CONFLICT); return result; result.add(0, current, oursEdit.getBeginA(), ConflictState.NO_CONFLICT); result.add(1, oursEdit.getBeginB(), oursEdit.getEndB(), ConflictState.NO_CONFLICT);
if (!lowLevelResult.containsConflicts()) return; if (conflicts == null)
/** * @param out * the {@link java.io.OutputStream} where to write the textual * presentation * @param res * the merge result which should be presented * @param seqName * When a conflict is reported each conflicting range will get a * name. This name is following the "<<<<<<< * " or ">>>>>>> " conflict markers. The * names for the sequences are given in this list * @param charset * the character set used when writing conflict metadata */ MergeFormatterPass(OutputStream out, MergeResult<RawText> res, List<String> seqName, Charset charset) { this.out = new EolAwareOutputStream(out); this.res = res; this.seqName = seqName; this.charset = charset; this.threeWayMerge = (res.getSequences().size() == 3); }
theirs.getEntryObjectId(), attributes); } catch (BinaryBlobException e) { MergeResult<RawText> r = new MergeResult<>(Collections.<RawText>emptyList()); r.setContainsConflicts(true); return r;
mergeResults.put( tw.getPathString(), new MergeResult<>(Collections .<RawText> emptyList())); MergeResult<SubmoduleConflict> result = new MergeResult<>( Arrays.asList( new SubmoduleConflict(base == null ? null new SubmoduleConflict(theirs == null ? null : theirs.getEntryObjectId()))); result.setContainsConflicts(true); mergeResults.put(tw.getPathString(), result); if (!ignoreConflicts) { attributes); if (ignoreConflicts) { result.setContainsConflicts(false); if (result.containsConflicts() && !ignoreConflicts) { unmergedPaths.add(currentPath);
mergeResults.put( tw.getPathString(), new MergeResult<RawText>(Collections .<RawText> emptyList())); result.setContainsConflicts(false); updateIndex(base, ours, theirs, result); if (result.containsConflicts() && !ignoreConflicts) unmergedPaths.add(tw.getPathString()); modifiedFiles.add(tw.getPathString());
theirs.getEntryObjectId(), attributes); } catch (BinaryBlobException e) { MergeResult<RawText> r = new MergeResult<>(Collections.<RawText>emptyList()); r.setContainsConflicts(true); return r;
mergeResults.put( tw.getPathString(), new MergeResult<>(Collections .<RawText> emptyList())); MergeResult<SubmoduleConflict> result = new MergeResult<>( Arrays.asList( new SubmoduleConflict(base == null ? null new SubmoduleConflict(theirs == null ? null : theirs.getEntryObjectId()))); result.setContainsConflicts(true); mergeResults.put(tw.getPathString(), result); if (!ignoreConflicts) { attributes); if (ignoreConflicts) { result.setContainsConflicts(false); if (result.containsConflicts() && !ignoreConflicts) { unmergedPaths.add(currentPath);
sequences.add(ours); sequences.add(theirs); MergeResult<S> result = new MergeResult<S>(sequences); result.add(1, 0, 0, ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, theirs.size(), ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); return result; } else if (theirs.size() == 0) { result.add(1, 0, ours.size(), ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, 0, ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(2, 0, 0, ConflictState.NO_CONFLICT); return result; result.add(0, current, oursEdit.getBeginA(), ConflictState.NO_CONFLICT); result.add(1, oursEdit.getBeginB(), oursEdit.getEndB(), ConflictState.NO_CONFLICT);
void formatMerge() throws IOException { boolean missingNewlineAtEnd = false; for (MergeChunk chunk : res) { RawText seq = res.getSequences().get(chunk.getSequenceIndex()); writeConflictMetadata(chunk); // the lines with conflict-metadata are written. Now write the chunk for (int i = chunk.getBegin(); i < chunk.getEnd(); i++) writeLine(seq, i); missingNewlineAtEnd = seq.isMissingNewlineAtEnd(); } // one possible leftover: if the merge result ended with a conflict we // have to close the last conflict here if (lastConflictingName != null) writeConflictEnd(); if (!missingNewlineAtEnd) out.beginln(); }
File mergedFile = inCore ? null : writeMergedFile(rawMerged, attributes); if (result.containsConflicts()) {
sequences.add(ours); sequences.add(theirs); MergeResult<S> result = new MergeResult<>(sequences); result.add(1, 0, 0, ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, theirs.size(), ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); } else result.add(1, 0, 0, ConflictState.NO_CONFLICT); return result; } else if (theirs.size() == 0) { result.add(1, 0, ours.size(), ConflictState.FIRST_CONFLICTING_RANGE); result.add(2, 0, 0, ConflictState.NEXT_CONFLICTING_RANGE); } else result.add(2, 0, 0, ConflictState.NO_CONFLICT); return result; result.add(0, current, oursEdit.getBeginA(), ConflictState.NO_CONFLICT); result.add(1, oursEdit.getBeginB(), oursEdit.getEndB(), ConflictState.NO_CONFLICT);
MergeFormatterPass(OutputStream out, MergeResult<RawText> res, List<String> seqName, String charsetName) { this.out = new EolAwareOutputStream(out); this.res = res; this.seqName = seqName; this.charsetName = charsetName; this.threeWayMerge = (res.getSequences().size() == 3); }
if (!lowLevelResult.containsConflicts()) return; if (conflicts == null)
/** * @param out * the {@link java.io.OutputStream} where to write the textual * presentation * @param res * the merge result which should be presented * @param seqName * When a conflict is reported each conflicting range will get a * name. This name is following the "<<<<<<< * " or ">>>>>>> " conflict markers. The * names for the sequences are given in this list * @param charset * the character set used when writing conflict metadata */ MergeFormatterPass(OutputStream out, MergeResult<RawText> res, List<String> seqName, Charset charset) { this.out = new EolAwareOutputStream(out); this.res = res; this.seqName = seqName; this.charset = charset; this.threeWayMerge = (res.getSequences().size() == 3); }
if (!lowLevelResult.containsConflicts()) return; if (conflicts == null)
void formatMerge() throws IOException { boolean missingNewlineAtEnd = false; for (MergeChunk chunk : res) { RawText seq = res.getSequences().get(chunk.getSequenceIndex()); writeConflictMetadata(chunk); // the lines with conflict-metadata are written. Now write the chunk for (int i = chunk.getBegin(); i < chunk.getEnd(); i++) writeLine(seq, i); missingNewlineAtEnd = seq.isMissingNewlineAtEnd(); } // one possible leftover: if the merge result ended with a conflict we // have to close the last conflict here if (lastConflictingName != null) writeConflictEnd(); if (!missingNewlineAtEnd) out.beginln(); }
IOException { File mergedFile = !inCore ? writeMergedFile(result) : null; if (result.containsConflicts()) {
void formatMerge() throws IOException { boolean missingNewlineAtEnd = false; for (MergeChunk chunk : res) { RawText seq = res.getSequences().get(chunk.getSequenceIndex()); writeConflictMetadata(chunk); // the lines with conflict-metadata are written. Now write the chunk for (int i = chunk.getBegin(); i < chunk.getEnd(); i++) writeLine(seq, i); missingNewlineAtEnd = seq.isMissingNewlineAtEnd(); } // one possible leftover: if the merge result ended with a conflict we // have to close the last conflict here if (lastConflictingName != null) writeConflictEnd(); if (!missingNewlineAtEnd) out.beginln(); }
File mergedFile = inCore ? null : writeMergedFile(rawMerged, attributes); if (result.containsConflicts()) {