]> source.dussan.org Git - jgit.git/log
jgit.git
9 years agoMerge changes I368af61a,I2400fe5f
Matthias Sohn [Thu, 30 Apr 2015 14:43:46 +0000 (10:43 -0400)]
Merge changes I368af61a,I2400fe5f

* changes:
  Remove pack from list when file handle is stale
  Lower log level to warn for handled pack errors

9 years agoAdd fsck.allowInvalidPersonIdent to accept invalid author/committers 35/46835/3
Shawn Pearce [Thu, 30 Apr 2015 04:56:28 +0000 (21:56 -0700)]
Add fsck.allowInvalidPersonIdent to accept invalid author/committers

A larger than expected number of real-world repositories found on
the Internet contain invalid author, committer and tagger lines
in their history. Many of these seem to be caused by users misusing
the user.name and user.email fields, e.g.:

  [user]
    name = Au Thor <author@example.com>
    email = author@example.com

that some version of Git (or a reimplementation thereof) copied
directly into the object header. These headers are not valid and
are rejected by a strict fsck, making it impossible to transfer
the repository with JGit/EGit.

Another form is an invalid committer line with double negative for
the time zone, e.g.

  committer Au Thor <a@b> 1288373970 --700

The real world is messy. :(

Allow callers and users to weaken the fsck settings to accept these
sorts of breakages if they really want to work on a repo that has
broken history.  Most routines will still function fine, however
commit timestamp sorting in RevWalk may become confused by a corrupt
committer line and sort commits out of order. This is mostly fine if
the corrupted chain is shorter than the slop window.

Change-Id: I6d529542c765c131de590f4f7ef8e7c1c8cb9db9

9 years agoRemove pack from list when file handle is stale 49/45649/5
Hugo Arès [Tue, 7 Apr 2015 15:17:06 +0000 (11:17 -0400)]
Remove pack from list when file handle is stale

This error happens on nfs file system when you try to read a file that
was deleted or replaced.

When the error happens because the file was deleted, removing it from
the list is the proper way to handle the error, same use case as
FileNotFoundException. When the error happens because the file was
replaced, removing the file from the list will cause the file to be
re-read so it will get the latest version of the file.

Bug: 462868
Change-Id: I368af61a6cf73706601a3e4df4ef24f0aa0465c5
Signed-off-by: Hugo Arès <hugo.ares@ericsson.com>
9 years agoLower log level to warn for handled pack errors 41/45641/4
Hugo Arès [Fri, 10 Apr 2015 13:08:07 +0000 (09:08 -0400)]
Lower log level to warn for handled pack errors

Pack not found and pack corrupted/invalid are handled by the code (pack
is removed from the list) so logging an error and the stacktrace is
misleading because it implies that there is an action to take to fix the
error.

Lower the log level to warn and remove the stacktrace for those 2 types
of errors and keep the error log statement for any other.

Change-Id: I2400fe5fec07ac6d6c244b852cce615663774e6e
Signed-off-by: Hugo Arès <hugo.ares@ericsson.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge branch 'stable-3.7' 97/46597/1
Matthias Sohn [Mon, 27 Apr 2015 21:59:26 +0000 (23:59 +0200)]
Merge branch 'stable-3.7'

* stable-3.7:
  Prepare 3.7.2-SNAPSHOT builds
  JGit v3.7.1.201504261725-r
  Revert "Let ObjectWalk.markUninteresting also mark the root tree as"

Change-Id: If1b62ff695e063d797c3d13c43e488ca56f29cbe
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoPrepare 3.7.2-SNAPSHOT builds 23/46523/1 stable-3.7
Matthias Sohn [Sun, 26 Apr 2015 22:33:14 +0000 (00:33 +0200)]
Prepare 3.7.2-SNAPSHOT builds

Change-Id: Ia42a665e76953b643a080b58d2cd4526575ddf2e
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoJGit v3.7.1.201504261725-r 22/46522/1 v3.7.1.201504261725-r
Matthias Sohn [Sun, 26 Apr 2015 21:23:20 +0000 (23:23 +0200)]
JGit v3.7.1.201504261725-r

Change-Id: I80639e317df80c103aef5cad75ad9079d43fb9d0
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge "Revert "Let ObjectWalk.markUninteresting also mark the root tree as"" into...
Matthias Sohn [Sun, 26 Apr 2015 20:26:51 +0000 (16:26 -0400)]
Merge "Revert "Let ObjectWalk.markUninteresting also mark the root tree as"" into stable-3.7

9 years agoRevert "Let ObjectWalk.markUninteresting also mark the root tree as" 47/46447/2
David Ostrovsky [Fri, 24 Apr 2015 16:55:31 +0000 (18:55 +0200)]
Revert "Let ObjectWalk.markUninteresting also mark the root tree as"

The Iff2de881 tried to fix missing tree ..." but introduced severe
performance degradation (>10x in some cases) when acting as server
(git push) and as client (replication). IOW cure is worse than the
disease.

This reverts commit c4797fe98655b3d52d0a90ba44fce6e053db3b8b.

Change-Id: I4e6056eb352d51277867f857a0cab380eca153ac
Signed-off-by: David Ostrovsky <david@ostrovsky.org>
9 years agoRemove validate support when reusing cached pack 52/46452/2
Shawn Pearce [Fri, 24 Apr 2015 18:16:33 +0000 (11:16 -0700)]
Remove validate support when reusing cached pack

Cached packs are only used when writing over the network or to
a bundle file and reuse validation is always disabled in these
two contexts. The client/consumer of the stream will be SHA-1
checksumming every object.

Reuse validation is most critical during local GC to avoid silently
ignoring corruption by stopping as soon as a problem is found and
leaving everything alone for the end-user to debug and salvage.
Cached packs are not supported during local GC as the bitmap rebuild
logic does not support including a cached pack in the result.

Strip out the validation and force PackWriter to always disable the
cached pack feature if reuseValidation is enabled.

Change-Id: If0d7baf2ae1bf1f7e71bf773151302c9f7887039

9 years agoRename copyThroughCache to shouldCopyThroughCache 48/46448/2
Shawn Pearce [Fri, 24 Apr 2015 17:22:28 +0000 (10:22 -0700)]
Rename copyThroughCache to shouldCopyThroughCache

Sensible suggestion from Terry Parker as a late comment on
commit f2efcdc6f769d59722b17e9274932d585035cfb6.

Change-Id: I225775bfb6d3d91ae066ff00f9d80a9c02a422c2

9 years agoAdd readAheadBuffer hint to ReadableChannel 90/46390/4
Shawn Pearce [Fri, 24 Apr 2015 04:59:23 +0000 (21:59 -0700)]
Add readAheadBuffer hint to ReadableChannel

This hint allows an underlying implementation to read more bytes when
possible and buffer them locally for future read calls to consume.

Change-Id: Ia986a1bb8640eecb91cfbd515c61fa1ff1574a6f

9 years agoMerge "Restore AwtCredentialsProvider to enable debugging pgm in Eclipse"
Shawn Pearce [Fri, 24 Apr 2015 16:47:45 +0000 (12:47 -0400)]
Merge "Restore AwtCredentialsProvider to enable debugging pgm in Eclipse"

9 years agoAvoid storing large packs in block cache during reuse 87/46387/3
Shawn Pearce [Thu, 23 Apr 2015 19:12:43 +0000 (12:12 -0700)]
Avoid storing large packs in block cache during reuse

When a large pack (> 30% of the block cache) is being reused by
copying it pollutes the block cache with noise by storing blocks
that are never referenced again.

Avoid this by streaming the file directly from its channel onto
the output stream.

Change-Id: I2e53de27f3dcfb93de68b1fad45f75ab23e79fe7

9 years agoRestore AwtCredentialsProvider to enable debugging pgm in Eclipse 60/46260/1
Matthias Sohn [Wed, 22 Apr 2015 10:53:35 +0000 (12:53 +0200)]
Restore AwtCredentialsProvider to enable debugging pgm in Eclipse

In 6c1f7393882baf8464859136a70199ea96fcae0f the AWT based credentials
provider was dropped because we don't support Java 5 any longer so we
can always use the ConsoleCredentialsProvider which requires Java 6.
This broke debugging org.eclipse.jgit.pgm since Eclipse doesn't support
using a system console authenticator [1].

[1] see https://bugs.eclipse.org/bugs/show_bug.cgi?id=148831

Change-Id: Iba71001a7762e73d6579ba9dfa5a08ddaba777ea

9 years agoExpose public getDepth method 57/45957/2
David Pletcher [Thu, 16 Apr 2015 19:47:15 +0000 (12:47 -0700)]
Expose public getDepth method

The clone or fetch depth is a valuable bit of information
for access logging. Create a public getter to faciliate access.
A precondition check prevents unintentional misuse when the
data isn't valid yet.

Change-Id: I4603d5fd3bd4a767e3e2419b0f2da3664cfbd7f8
Signed-off-by: David Pletcher <dpletcher@google.com>
9 years agoFix error message to include cause if ResetCommand fails 05/45805/2
Matthias Sohn [Tue, 14 Apr 2015 13:28:19 +0000 (15:28 +0200)]
Fix error message to include cause if ResetCommand fails

Bug: 464048
Change-Id: I6e7d9262b94cb168c84faef1dea22c1e082fe5ad
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge "FS.readPipe() shouldn't log IOException as an error"
Shawn Pearce [Thu, 9 Apr 2015 01:08:50 +0000 (21:08 -0400)]
Merge "FS.readPipe() shouldn't log IOException as an error"

9 years agoMerge "Remove obsolete API warning filters to silence warnings"
Shawn Pearce [Thu, 9 Apr 2015 01:08:29 +0000 (21:08 -0400)]
Merge "Remove obsolete API warning filters to silence warnings"

9 years agoMerge "Use try-with-resources to fix warnings in AddCommand"
Shawn Pearce [Thu, 9 Apr 2015 01:08:00 +0000 (21:08 -0400)]
Merge "Use try-with-resources to fix warnings in AddCommand"

9 years agoMerge changes Iad4d4127,I0211bcf0
Shawn Pearce [Thu, 9 Apr 2015 01:07:05 +0000 (21:07 -0400)]
Merge changes Iad4d4127,I0211bcf0

* changes:
  Silence warning for non-translatable String in AddNoteCommand
  Use try-with-resources to fix warnings in AddNoteCommand

9 years agoMerge changes I28a5c7e2,If90a6cca
Shawn Pearce [Thu, 9 Apr 2015 01:05:31 +0000 (21:05 -0400)]
Merge changes I28a5c7e2,If90a6cca

* changes:
  Replace use of deprecated release() in BasePackPushConnection
  Replace use of deprecated release() in BasePackFetchConnection

9 years agoMerge changes I184945ee,Iacaad1a7
Shawn Pearce [Thu, 9 Apr 2015 01:04:07 +0000 (21:04 -0400)]
Merge changes I184945ee,Iacaad1a7

* changes:
  Remove unnecessary $NON-NLS comment in BaseReceivePack
  Use try-with-resources to close resources in BaseReceivePack

9 years agoMerge changes Ic555e6e0,Id4cb9a23
Shawn Pearce [Thu, 9 Apr 2015 00:59:03 +0000 (20:59 -0400)]
Merge changes Ic555e6e0,Id4cb9a23

* changes:
  Replace use of deprecated release() method in BlameResult
  Use try-with-resource to close BlameGenerator

9 years agoMerge "Use try-with-resource to close resources in BlobBasedConfig"
Shawn Pearce [Thu, 9 Apr 2015 00:58:31 +0000 (20:58 -0400)]
Merge "Use try-with-resource to close resources in BlobBasedConfig"

9 years agoMerge "Use try-with-resource to close resources in BundleFetchConnection"
Shawn Pearce [Thu, 9 Apr 2015 00:57:51 +0000 (20:57 -0400)]
Merge "Use try-with-resource to close resources in BundleFetchConnection"

9 years agoMerge "Use try-with-resource to close resources in BundleWriter"
Shawn Pearce [Thu, 9 Apr 2015 00:56:21 +0000 (20:56 -0400)]
Merge "Use try-with-resource to close resources in BundleWriter"

9 years agoUse try-with-resource to close resources in CommitCommand 89/45189/3
Matthias Sohn [Thu, 2 Apr 2015 22:52:41 +0000 (00:52 +0200)]
Use try-with-resource to close resources in CommitCommand

Change-Id: Ibbbc74acfd050f28e68f318970660b5959caf7e3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoExternalize error message used in CheckoutCommand 83/45183/3
Matthias Sohn [Thu, 2 Apr 2015 22:29:41 +0000 (00:29 +0200)]
Externalize error message used in CheckoutCommand

Change-Id: Ifbc469b07e63218107157ffbf23ae55c52a55ef4
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in CheckoutCommand 82/45182/3
Matthias Sohn [Wed, 1 Apr 2015 23:36:22 +0000 (01:36 +0200)]
Use try-with-resource to close resources in CheckoutCommand

Change-Id: Ia4d4f9bff03a03d116b80022d7691df67bf8b51b
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge "Fix resource leak in ChangeIdUtil"
Shawn Pearce [Wed, 8 Apr 2015 20:08:41 +0000 (16:08 -0400)]
Merge "Fix resource leak in ChangeIdUtil"

9 years agoMerge changes I11631afb,Iaa51a46a
Shawn Pearce [Wed, 8 Apr 2015 19:53:47 +0000 (15:53 -0400)]
Merge changes I11631afb,Iaa51a46a

* changes:
  Externalize error messages used in DfsGarbageCollector
  Use try-with-resource to close resources in DfsGarbageCollector

9 years agoMerge changes I8c06635c,I62d6de7d
Shawn Pearce [Wed, 8 Apr 2015 19:30:49 +0000 (15:30 -0400)]
Merge changes I8c06635c,I62d6de7d

* changes:
  Silence non-externalized string warning in CherryPickCommand
  Use try-with-resource to close resources in CherryPickCommand

9 years agoMerge "Silence non-externalized string warnings in CherryPickResult"
Shawn Pearce [Wed, 8 Apr 2015 19:30:16 +0000 (15:30 -0400)]
Merge "Silence non-externalized string warnings in CherryPickResult"

9 years agoMerge "Use try-with-resource to close resources in CloneCommand"
Shawn Pearce [Wed, 8 Apr 2015 19:29:52 +0000 (15:29 -0400)]
Merge "Use try-with-resource to close resources in CloneCommand"

9 years agoMerge "Replace call to deprecated RevWalk.release() in DescribeCommand"
Shawn Pearce [Wed, 8 Apr 2015 19:26:19 +0000 (15:26 -0400)]
Merge "Replace call to deprecated RevWalk.release() in DescribeCommand"

9 years agoMerge "Use try-with-resource to close resources in DiffCommand"
Shawn Pearce [Wed, 8 Apr 2015 19:26:06 +0000 (15:26 -0400)]
Merge "Use try-with-resource to close resources in DiffCommand"

9 years agoMerge "Fix resource leak in DiffFormatter"
Shawn Pearce [Wed, 8 Apr 2015 19:25:29 +0000 (15:25 -0400)]
Merge "Fix resource leak in DiffFormatter"

9 years agoMerge "Use try-with-resource to close resources in DirCache"
Shawn Pearce [Wed, 8 Apr 2015 19:22:57 +0000 (15:22 -0400)]
Merge "Use try-with-resource to close resources in DirCache"

9 years agoExternalize error messages used in DfsGarbageCollector 92/45192/3
Matthias Sohn [Thu, 2 Apr 2015 23:09:32 +0000 (01:09 +0200)]
Externalize error messages used in DfsGarbageCollector

Change-Id: I11631afb33a2bb29d994551a0be8775bbe277300
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in DfsGarbageCollector 91/45191/2
Matthias Sohn [Thu, 2 Apr 2015 23:03:15 +0000 (01:03 +0200)]
Use try-with-resource to close resources in DfsGarbageCollector

Change-Id: Iaa51a46a9dde13d6f5c0f9ff54a68cea0ef1fde3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge "Reduce visibility of DirCacheCheckout.checkValidPath()"
Shawn Pearce [Wed, 8 Apr 2015 19:21:15 +0000 (15:21 -0400)]
Merge "Reduce visibility of DirCacheCheckout.checkValidPath()"

9 years agoMerge "Use try-with-resource to close resources in FetchProcess"
Shawn Pearce [Wed, 8 Apr 2015 19:20:36 +0000 (15:20 -0400)]
Merge "Use try-with-resource to close resources in FetchProcess"

9 years agoMerge "Use try-with-resource to close resources in GC"
Shawn Pearce [Wed, 8 Apr 2015 19:20:13 +0000 (15:20 -0400)]
Merge "Use try-with-resource to close resources in GC"

9 years agoMerge "Replace deprecated release() methods by close() in Merger"
Shawn Pearce [Wed, 8 Apr 2015 19:19:18 +0000 (15:19 -0400)]
Merge "Replace deprecated release() methods by close() in Merger"

9 years agoMerge "Ensure that NameRevCommand.call() closes RevWalk"
Shawn Pearce [Wed, 8 Apr 2015 19:18:12 +0000 (15:18 -0400)]
Merge "Ensure that NameRevCommand.call() closes RevWalk"

9 years agoMerge "Replace deprecated release() methods by close() in NoteMapMerger"
Shawn Pearce [Wed, 8 Apr 2015 19:17:28 +0000 (15:17 -0400)]
Merge "Replace deprecated release() methods by close() in NoteMapMerger"

9 years agoMerge "Use try-with-resource to close resources in ObjectDatabase"
Shawn Pearce [Wed, 8 Apr 2015 19:17:11 +0000 (15:17 -0400)]
Merge "Use try-with-resource to close resources in ObjectDatabase"

9 years agoMerge changes Ia3908555,I3bc26847
Shawn Pearce [Wed, 8 Apr 2015 19:16:51 +0000 (15:16 -0400)]
Merge changes Ia3908555,I3bc26847

* changes:
  Silence false null pointer access warnings in PackFile
  Externalize error messages used in ObjectDirectoryInserter

9 years agoMerge "Silence non-externalized string warning in PackIndexV2"
Shawn Pearce [Wed, 8 Apr 2015 19:15:46 +0000 (15:15 -0400)]
Merge "Silence non-externalized string warning in PackIndexV2"

9 years agoMerge changes I1a4181fc,Ic2db0511
Shawn Pearce [Wed, 8 Apr 2015 19:15:32 +0000 (15:15 -0400)]
Merge changes I1a4181fc,Ic2db0511

* changes:
  Silence non-externalized string warning in PackParser
  Replace call to deprecated release() by close() in PackParser

9 years agoSilence non-externalized string warning in PackParser 84/45284/1
Matthias Sohn [Fri, 3 Apr 2015 22:54:24 +0000 (00:54 +0200)]
Silence non-externalized string warning in PackParser

Change-Id: I1a4181fc292c42157c69479f71c7674b2e00d2ce
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace call to deprecated release() by close() in PackParser 83/45283/1
Matthias Sohn [Fri, 3 Apr 2015 22:53:47 +0000 (00:53 +0200)]
Replace call to deprecated release() by close() in PackParser

Change-Id: Ic2db051130059cce89486f55ecca32a7ce6715fd
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoSilence non-externalized string warning in PackIndexV2 82/45282/1
Matthias Sohn [Fri, 3 Apr 2015 22:51:05 +0000 (00:51 +0200)]
Silence non-externalized string warning in PackIndexV2

Change-Id: I8c94811972c593c898f6375178f250a2123d01c6
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoSilence false null pointer access warnings in PackFile 81/45281/1
Matthias Sohn [Fri, 3 Apr 2015 22:49:05 +0000 (00:49 +0200)]
Silence false null pointer access warnings in PackFile

Change-Id: Ia39085557b38840dfaa9b4995e6f6c40e19042cb
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoExternalize error messages used in ObjectDirectoryInserter 79/45279/1
Matthias Sohn [Fri, 3 Apr 2015 22:45:33 +0000 (00:45 +0200)]
Externalize error messages used in ObjectDirectoryInserter

Change-Id: I3bc26847071fbc31267a4a4cf5a10b428bcf229d
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in ObjectDatabase 77/45277/1
Matthias Sohn [Fri, 3 Apr 2015 22:38:39 +0000 (00:38 +0200)]
Use try-with-resource to close resources in ObjectDatabase

Change-Id: Ib410bf0d3c300c25b615bb6a51488b3d88aeb3bd
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace deprecated release() methods by close() in NoteMapMerger 76/45276/1
Matthias Sohn [Fri, 3 Apr 2015 22:36:28 +0000 (00:36 +0200)]
Replace deprecated release() methods by close() in NoteMapMerger

Change-Id: Iaa76f0e853bb82cd7f231fd2f462a319f4196d8c
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoEnsure that NameRevCommand.call() closes RevWalk 75/45275/1
Matthias Sohn [Fri, 3 Apr 2015 22:32:59 +0000 (00:32 +0200)]
Ensure that NameRevCommand.call() closes RevWalk

Change-Id: Icc35a81081759d664fe9e2b05e962ff3cd9aad92
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace deprecated release() methods by close() in Merger 72/45272/1
Matthias Sohn [Fri, 3 Apr 2015 22:19:39 +0000 (00:19 +0200)]
Replace deprecated release() methods by close() in Merger

Change-Id: I80ce98511a6e9048f1eea93288d6960dcbf3326f
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in GC 71/45271/1
Matthias Sohn [Fri, 3 Apr 2015 22:17:03 +0000 (00:17 +0200)]
Use try-with-resource to close resources in GC

Change-Id: I62a755a4ce839a252a5e80abf3f0d21243862376
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in FetchProcess 67/45267/1
Matthias Sohn [Fri, 3 Apr 2015 22:05:14 +0000 (00:05 +0200)]
Use try-with-resource to close resources in FetchProcess

Change-Id: If489d530ca39ae279c8da848f870b561c38eac3c
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoClearer error message when service is not enabled 26/43926/4
Hector Oswaldo Caballero [Mon, 16 Mar 2015 12:48:56 +0000 (08:48 -0400)]
Clearer error message when service is not enabled

When a user tried to use a service not enabled in the remote server
a misleading error  message was given:

   fatal: remote error: Git access forbidden

This patch modifies the error message to make the cause clearer
to the user. Now, when the user tries to use a not enabled service,
the message error clearly states it:

   fatal: remote error: Service not enabled

Change-Id: If096c4ddd17c5aae0e99e3ea6eea4b69bd3c5466
Signed-off-by: Hector Oswaldo Caballero <hector.caballero@ericsson.com>
9 years agoReduce visibility of DirCacheCheckout.checkValidPath() 98/45198/1
Matthias Sohn [Fri, 3 Apr 2015 00:03:00 +0000 (02:03 +0200)]
Reduce visibility of DirCacheCheckout.checkValidPath()

This was deprecated and should only be used by DirCacheCheckout and
friends. Other classes should use SystemReader.checkPath() instead.

Change-Id: I37cf753b1f081602dee9f0f47979eff39d735f92
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in DirCache 95/45195/1
Matthias Sohn [Thu, 2 Apr 2015 23:25:45 +0000 (01:25 +0200)]
Use try-with-resource to close resources in DirCache

Change-Id: I7dd3fd38784689816a1a8e9d8ccb499ae2138a8a
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoFix resource leak in DiffFormatter 94/45194/1
Matthias Sohn [Thu, 2 Apr 2015 23:23:31 +0000 (01:23 +0200)]
Fix resource leak in DiffFormatter

- close RevWalk allocated in scan()
- replace use of deprecated ObjectReader.release() method

Change-Id: I41b2b10a1a44270a6ceaa1741e996c0921439852
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in DiffCommand 93/45193/1
Matthias Sohn [Thu, 2 Apr 2015 23:15:37 +0000 (01:15 +0200)]
Use try-with-resource to close resources in DiffCommand

Change-Id: I13d7c8bd0eb049aa69effd8b74384746226414cb
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace call to deprecated RevWalk.release() in DescribeCommand 90/45190/1
Matthias Sohn [Thu, 2 Apr 2015 22:58:50 +0000 (00:58 +0200)]
Replace call to deprecated RevWalk.release() in DescribeCommand

Change-Id: Ie4bfdeb37d345d6ff1525a737f3b7653b2f8e23e
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in CloneCommand 88/45188/1
Matthias Sohn [Thu, 2 Apr 2015 22:38:42 +0000 (00:38 +0200)]
Use try-with-resource to close resources in CloneCommand

Change-Id: I9536bc208a5f3ec34f0a82fb565b4253be38e074
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoSilence non-externalized string warnings in CherryPickResult 86/45186/1
Matthias Sohn [Thu, 2 Apr 2015 22:36:36 +0000 (00:36 +0200)]
Silence non-externalized string warnings in CherryPickResult

Change-Id: I515abbcb4319b744c5074de5a0c56caed13c2fb5
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoSilence non-externalized string warning in CherryPickCommand 85/45185/1
Matthias Sohn [Thu, 2 Apr 2015 22:33:01 +0000 (00:33 +0200)]
Silence non-externalized string warning in CherryPickCommand

Change-Id: I8c06635ce655470b5b650fa5c0c546e64445420c
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in CherryPickCommand 84/45184/1
Matthias Sohn [Thu, 2 Apr 2015 22:32:08 +0000 (00:32 +0200)]
Use try-with-resource to close resources in CherryPickCommand

Change-Id: I62d6de7d67c7de2460f4cbe918ad2bb8109650b9
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoFix resource leak in ChangeIdUtil 00/45100/1
Matthias Sohn [Wed, 1 Apr 2015 23:30:14 +0000 (01:30 +0200)]
Fix resource leak in ChangeIdUtil

Change-Id: I5cb3e9c7e167248697932933eef925c446514683
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in BundleWriter 99/45099/1
Matthias Sohn [Wed, 1 Apr 2015 23:25:46 +0000 (01:25 +0200)]
Use try-with-resource to close resources in BundleWriter

Change-Id: I5341973737f6d21c04982bcbefc2ed672ac9bcff
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in BundleFetchConnection 98/45098/1
Matthias Sohn [Wed, 1 Apr 2015 23:24:05 +0000 (01:24 +0200)]
Use try-with-resource to close resources in BundleFetchConnection

Change-Id: Id79c01133b835e278d5b494b5bc5972d7aeed9a9
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close resources in BlobBasedConfig 97/45097/1
Matthias Sohn [Wed, 1 Apr 2015 23:21:55 +0000 (01:21 +0200)]
Use try-with-resource to close resources in BlobBasedConfig

Change-Id: Idb890788a88049d07326cd48e7c5534148f18e32
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace use of deprecated release() method in BlameResult 96/45096/1
Matthias Sohn [Wed, 1 Apr 2015 23:18:42 +0000 (01:18 +0200)]
Replace use of deprecated release() method in BlameResult

Change-Id: Ic555e6e0443337aed694bc6445a60abe08e07ad2
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resource to close BlameGenerator 95/45095/1
Matthias Sohn [Wed, 1 Apr 2015 23:15:59 +0000 (01:15 +0200)]
Use try-with-resource to close BlameGenerator

Change-Id: Id4cb9a236dddfc674b55e9e7037329a885455288
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoRemove unnecessary $NON-NLS comment in BaseReceivePack 94/45094/1
Matthias Sohn [Wed, 1 Apr 2015 23:12:22 +0000 (01:12 +0200)]
Remove unnecessary $NON-NLS comment in BaseReceivePack

Change-Id: I184945ee29fb9a6b1f30aec88958375e7b5239b3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resources to close resources in BaseReceivePack 93/45093/1
Matthias Sohn [Wed, 1 Apr 2015 23:11:22 +0000 (01:11 +0200)]
Use try-with-resources to close resources in BaseReceivePack

Change-Id: Iacaad1a7e0719541e5616d231422ea6fd4c95161
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace use of deprecated release() in BasePackPushConnection 91/45091/1
Matthias Sohn [Wed, 1 Apr 2015 23:06:08 +0000 (01:06 +0200)]
Replace use of deprecated release() in BasePackPushConnection

Change-Id: I28a5c7e222daf35e3d1a1a6fda8ed6ef9b960f78
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoReplace use of deprecated release() in BasePackFetchConnection 89/45089/1
Matthias Sohn [Wed, 1 Apr 2015 23:02:21 +0000 (01:02 +0200)]
Replace use of deprecated release() in BasePackFetchConnection

Change-Id: If90a6cca9a2ae80474f5ad023cb2a0a8905010be
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resources to close walks in ArchiveCommand 88/45088/1
Matthias Sohn [Wed, 1 Apr 2015 22:58:13 +0000 (00:58 +0200)]
Use try-with-resources to close walks in ArchiveCommand

Change-Id: I77120d77a12f1bab5c918a23b0e3eac90e320b2b
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoSilence warning for non-translatable String in AddNoteCommand 87/45087/1
Matthias Sohn [Wed, 1 Apr 2015 22:51:02 +0000 (00:51 +0200)]
Silence warning for non-translatable String in AddNoteCommand

Change-Id: Iad4d41271eff4e8744efece5bc777c1cb06dead7
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resources to fix warnings in AddNoteCommand 84/45084/1
Matthias Sohn [Wed, 1 Apr 2015 22:46:59 +0000 (00:46 +0200)]
Use try-with-resources to fix warnings in AddNoteCommand

Replaces use of deprecated release() methods.

Change-Id: I0211bcf0a76a2fccc2c85fa74778e20c256984ba
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoUse try-with-resources to fix warnings in AddCommand 85/45085/1
Matthias Sohn [Wed, 1 Apr 2015 22:40:44 +0000 (00:40 +0200)]
Use try-with-resources to fix warnings in AddCommand

- replaces use of deprecated ObjectInserter.release()
- auto-close TreeWalk

Change-Id: I540ee711b8c3430a71fdff07add506b7d9c039dc
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoRemove obsolete API warning filters to silence warnings 81/45081/1
Matthias Sohn [Wed, 1 Apr 2015 22:29:34 +0000 (00:29 +0200)]
Remove obsolete API warning filters to silence warnings

Change-Id: I958d540a6afb1462a3fbb3d76c8f51f386ac068e
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoBuffer overflow output stream 67/45067/1
Shawn Pearce [Wed, 1 Apr 2015 19:59:33 +0000 (12:59 -0700)]
Buffer overflow output stream

Most callers/users of TemporaryBuffer are sizing the in-memory
portion large enough that most outputs fit into RAM. With this
assumption they don't pay close attention to the size of IOs
being written, as it "should" just be a copy from one byte array
to another.

Overflow sets up a local file handle, which is costly to write to
for small IO units. Wrap the local file in a BufferedOutputStream
to combine small writes together. Larger writes can still bypass the
buffer as BOS automatically avoids copying for larger writes.

Change-Id: I09f4136dd65c48830cfda86d9101bc647581018a

9 years agoFix overflow stream leak during merge conflicts 66/45066/1
Shawn Pearce [Wed, 1 Apr 2015 19:57:06 +0000 (12:57 -0700)]
Fix overflow stream leak during merge conflicts

When reading back from an overflowed TemporaryBuffer the InputStream
must be closed to close the FileInputStream that is reading from
the backing file.

Change-Id: Id83d8f16f5b2c2618a9f841ec3508508455a6ae1

9 years agoUse local GIT_DIR for overflow during merge conflicts 65/45065/1
Shawn Pearce [Wed, 1 Apr 2015 19:53:00 +0000 (12:53 -0700)]
Use local GIT_DIR for overflow during merge conflicts

By writing the temporary overflow merge result to $GIT_DIR JGit
can ensure the same filesystem permissions apply to protect the
file contents.

If no directory is available from the repository (e.g. DfsRepository)
null will be passed and the system temporary directory will be used
instead.

Change-Id: I95532aa092676d18f1dc1e3fdbe6dcb1f91b782e

9 years agoUse try-with-resources and BufferedOutputStream for local merge conflicts 64/45064/1
Shawn Pearce [Wed, 1 Apr 2015 19:52:14 +0000 (12:52 -0700)]
Use try-with-resources and BufferedOutputStream for local merge conflicts

Change-Id: If5539aab1de19bb22400c862bbe2cdf7c3e85535

9 years agoOptimize EolAwareOutputStream for bulk output 63/45063/1
Shawn Pearce [Wed, 1 Apr 2015 19:47:57 +0000 (12:47 -0700)]
Optimize EolAwareOutputStream for bulk output

Formatting merge conflicts one byte at a time is going to be very
slow when the final OutputStream is a FileOutputStream and the JVM
is making system calls for each byte output.

When outputting a range of bytes from a byte[] the bol (beginning
of line) value only depends on the value of the last byte written.
Other bytes in the array can be passed directly to the lower stream
for more efficient output.

Change-Id: I3415f9a390ee215210a17bb5bf39164d197e1348

9 years agoResolveMerge only needs to visit differing TreeEntries 62/44962/1
Matthias Sohn [Tue, 31 Mar 2015 15:33:31 +0000 (17:33 +0200)]
ResolveMerge only needs to visit differing TreeEntries

This should considerably speed up the treewalk on larger repositories.

Found by discussing new EGit API to support model merge in change
eda23bb556d342f421f03b93c7faa160998598aa

Change-Id: I822721c76c64e614f87a080ced2457941f53adcd
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
cc: Laurent Delaigue <laurent.delaigue@obeo.fr>

9 years agoFS.readPipe() shouldn't log IOException as an error 94/44794/1
Matthias Sohn [Sat, 28 Mar 2015 09:10:47 +0000 (10:10 +0100)]
FS.readPipe() shouldn't log IOException as an error

This unintentionally was changed from severity debug to error which is
causing unexpected log entries.

Bug: 463349
Change-Id: I4b6d42a1420652ab6824e237bd231ba86896acbf
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoDo not add a newline at the end if neither merged side had one 19/33219/6
André de Oliveira [Wed, 10 Sep 2014 19:02:05 +0000 (16:02 -0300)]
Do not add a newline at the end if neither merged side had one

Bug: 390833
Change-Id: I29f7b79b241929877c93ac485c677487a91bb77b
Signed-off-by: André de Oliveira <andre.oliveira@liferay.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMake RepositoryState.REBASING_MERGE reachable again. 32/36832/4
Laurent Delaigue [Fri, 21 Nov 2014 10:28:19 +0000 (11:28 +0100)]
Make RepositoryState.REBASING_MERGE reachable again.

If a non interactive rebase is launched, stopping after a conflict
should set the repository state to RepositoryState.REBASING_MERGE
instead of RepositoryState.REBASING_INTERACTIVE.

Bug: 452623
Change-Id: Ie885aab6d71dabd158a718af0d14fff643c9b850
Also-by: Arthur Daussy <arthur.daussy@obeo.fr>
Signed-off-by: Laurent Delaigue <laurent.delaigue@obeo.fr>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoFix RecursiveMerger in case of multiple, independent base commits 67/44567/1
Christian Halstrick [Wed, 25 Mar 2015 09:48:03 +0000 (10:48 +0100)]
Fix RecursiveMerger in case of multiple, independent base commits

When RecursiveMerger found that there are multiple base-commits for the
commits to be merged it tries to temporarily merge the base commits. But
if these base commits have no common predecessor there was a bug in JGit
leading to a NPE. This commit fixes this by enforcing that an empty tree
is used as base when merging two unrelated base commits.

This logic was already there when merging two commits which have no
common predecessor (ThreeWayMerger.mergeBase()). But the code which was
computing a new temporary base commit in case of criss-cross merges
didn't take care to pick an empty tree when no common predecessor can be
found.

Bug: 462671
Change-Id: Ibd96302f5f81383f36d3b1e3edcbf5822147b1a4

9 years agoTestRepository: Add a cherryPick method 22/44122/4
Dave Borowitz [Wed, 18 Mar 2015 17:46:41 +0000 (10:46 -0700)]
TestRepository: Add a cherryPick method

CherryPickCommand only works on a non-bare repository, as it must
modify the working tree and index in case of a merge conflict. In
tests, being able to recover from a merge conflict is less important,
as the caller should be able to control the full contents of files in
advance of the cherry-pick.

Change-Id: Ic332e44df1308b9336e884666b08c1f6db64513d

9 years agoInclude slf4j and log4j in jgit command line 88/43488/3
Matthias Sohn [Mon, 9 Mar 2015 22:57:48 +0000 (15:57 -0700)]
Include slf4j and log4j in jgit command line

This enables the command line to log. Include log4j configuration to log
warnings and errors to stderr.

Exclude the dependencies which log4j 1.2.15 should have marked optional.
See
http://unitstep.net/blog/2009/05/18/resolving-log4j-1215-dependency-problems-in-maven-using-exclusions/
for details

Change-Id: Ie730db4007fb7614fd7d130cd0858b1ac550066a
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
9 years agoMerge bundle org.eclipse.jgit.java7 into org.eclipse.jgit 68/43768/2
Matthias Sohn [Fri, 13 Mar 2015 02:30:37 +0000 (19:30 -0700)]
Merge bundle org.eclipse.jgit.java7 into org.eclipse.jgit

As we moved minimum Java version to 7 we don't need a separate bundle
and feature for JGit features depending on Java 7 anymore.

Change-Id: Ib5da61b0886ddbdea65298f1e8c6d65c9879ced1
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>