[JGIT PATCH 0/6] Diff processing utilities

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Back in late 2008 Dscho started writing some basic diff routines
for JGit.  That work got partially shelved when he had to move onto
more important day-job topics.  This series is starting to revive
some portions of his work, and bring it into JGit.

In particular I want at least this much merged, so I can use it
in Gerrit Code Review to massage an existing patch file before I
display it.  Currently most of that logic is within Gerrit, and
I'd much rather push it down into JGit where anyone can reuse it.

To be clear, this series *does not* contain a way to create a diff.
Dscho wrote much more code which is not yet ready for inclusion.

After applying this series we have an EditList describing what
happened in an existing patch we parsed with the existing Patch
class, and a DiffFormatter which can be used to reflow a patch
script if the repository has both the pre and post image objects.

The formatter part is really only useful if the repository created
the patch script, or received the objects over a git native object
transport, like Gerrit Code Review does with SSH.

Dscho, can you give us yea-or-nay for SBO lines for the patches
I've attributed to you?


Johannes E. Schindelin (3):
  Add diff.Edit to describe an edit region within a file
  Add diff.RawText to index a file content for later compares
  Add diff.DiffFormatter to create Git style unified patch scripts

Shawn O. Pearce (3):
  Add set to IntList
  Add diff.EditList to provide for a list of Edit instances
  Teach FileHeader, HunkHeader how to create an EditList

 .../spearce/jgit/patch/testEditList_Types.patch    |   24 +++
 .../tst/org/spearce/jgit/diff/EditListTest.java    |  121 +++++++++++++
 .../tst/org/spearce/jgit/diff/EditTest.java        |  139 ++++++++++++++
 .../tst/org/spearce/jgit/diff/RawTextTest.java     |   93 ++++++++++
 .../tst/org/spearce/jgit/patch/EditListTest.java   |   95 ++++++++++
 .../tst/org/spearce/jgit/util/IntListTest.java     |   21 +++
 .../src/org/spearce/jgit/diff/DiffFormatter.java   |  187 +++++++++++++++++++
 .../src/org/spearce/jgit/diff/Edit.java            |  189 ++++++++++++++++++++
 .../src/org/spearce/jgit/diff/EditList.java        |   93 ++++++++++
 .../src/org/spearce/jgit/diff/RawText.java         |  172 ++++++++++++++++++
 .../src/org/spearce/jgit/diff/Sequence.java        |   78 ++++++++
 .../src/org/spearce/jgit/patch/FileHeader.java     |    9 +
 .../src/org/spearce/jgit/patch/HunkHeader.java     |   48 +++++
 .../src/org/spearce/jgit/util/IntList.java         |   17 ++
 14 files changed, 1286 insertions(+), 0 deletions(-)
 create mode 100644 org.spearce.jgit.test/tst-rsrc/org/spearce/jgit/patch/testEditList_Types.patch
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/diff/EditListTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/diff/EditTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/diff/RawTextTest.java
 create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/patch/EditListTest.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/diff/DiffFormatter.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/diff/Edit.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/diff/EditList.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/diff/RawText.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/diff/Sequence.java

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]