|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.jgit.util.ChangeIdUtil
public class ChangeIdUtil
Utilities for creating and working with Change-Id's, like the one used by Gerrit Code Review.
A Change-Id is a SHA-1 computed from the content of a commit, in a similar fashion to how the commit id is computed. Unlike the commit id a Change-Id is retained in the commit and subsequent revised commits in the footer of the commit text.
Constructor Summary | |
---|---|
ChangeIdUtil()
|
Method Summary | |
---|---|
static ObjectId |
computeChangeId(ObjectId treeId,
ObjectId firstParentId,
PersonIdent author,
PersonIdent committer,
String message)
Compute a Change-Id. |
static int |
indexOfChangeId(String message,
String delimiter)
Return the index in the String message where the Change-Id entry
in the footer begins. |
static int |
indexOfFirstFooterLine(String[] lines)
Find the index of the first line of the footer paragraph in an array of the lines, or lines.length if no footer is available |
static String |
insertId(String message,
ObjectId changeId)
Find the right place to insert a Change-Id and return it. |
static String |
insertId(String message,
ObjectId changeId,
boolean replaceExisting)
Find the right place to insert a Change-Id and return it. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ChangeIdUtil()
Method Detail |
---|
public static ObjectId computeChangeId(ObjectId treeId, ObjectId firstParentId, PersonIdent author, PersonIdent committer, String message) throws IOException
treeId
- The id of the tree that would be committedfirstParentId
- parent id of previous commit or nullauthor
- the PersonIdent
for the presumed author and timecommitter
- the PersonIdent
for the presumed committer and timemessage
- The commit message
IOException
public static String insertId(String message, ObjectId changeId)
The Change-Id is inserted before the first footer line but after a Bug line.
message
- changeId
-
public static String insertId(String message, ObjectId changeId, boolean replaceExisting)
If no Change-Id is found the Change-Id is inserted before
the first footer line but after a Bug line.
If Change-Id is found and replaceExisting is set to false,
the message is unchanged.
If Change-Id is found and replaceExisting is set to true,
the Change-Id is replaced with changeId
.
message
- changeId
- replaceExisting
-
public static int indexOfChangeId(String message, String delimiter)
message
where the Change-Id entry
in the footer begins. If there are more than one entries matching the
pattern, return the index of the last one in the last section. Because of
Bug: 400818 we release the constraint here that a footer must contain
only lines matching footerPattern
.
message
- delimiter
- the line delimiter, like "\n" or "\r\n", needed to find the
footer
public static int indexOfFirstFooterLine(String[] lines)
lines
- the commit message split into lines and the line delimiters
stripped off
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |