J'ai trouvé similaire question et de base sur elle, mais j'ai l'erreur Cannot invoke method getAuthorIdent() on null object
. J'essaie d'obtenir la dernière validation, vérifiez si elle est égale à badAuthor
. Pourquoi il ne peut pas être null
? Et si la déclaration fonctionne comme je le veux?Jgit Auteur dernier commit
def authorEqual() {
def badAuthor = 'John'
Git git = Git.open(new File(".git"))
RevCommit lastCommit = null --> ERROR FROM HERE
List<Ref> branches = new Git(git.repository).branchList().setListMode(ListMode.ALL).call();
try {
RevWalk walk = new RevWalk(git.repository)
for(Ref branch : branches){
RevCommit commit = walk.parseCommit(branch.getObjectId());
PersonIdent aAuthor = commit.getAuthorIdent()
if(commit.getAuthorIdent().getWhen().compareTo(
-----------^ <-- HERE ERROR
lastCommit.getAuthorIdent().getWhen().equals(badAuthor)) > 0)
lastCommit = commit;
println commit
Je pense que vous n'avez pas défini lastCommit avant de l'utiliser. – dynamo
'RevCommit lastCommit = null' -> Exemple de la question liée –
vous devriez vérifier si lastCommit est null. De toute façon, si vous vouliez trouver des commits faits par un mauvais acteur, pourquoi avez-vous besoin du dernier commit – dynamo