aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Prepare post 3.4.0 RC1 buildsMatthias Sohn2014-05-2155-59/+59
| | | | Change-Id: Ia8d29046439bc9134acdf7c88ab85ea49c4ddf47 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v3.4.0.201405211411-rc1v3.4.0.201405211411-rc1Matthias Sohn2014-05-2155-59/+59
| | | | | Change-Id: Ia3834770b9719f64cbdfd0338034c392fa3ae5db Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Add script to create JGit releaseMatthias Sohn2014-05-211-0/+52
| | | | | Change-Id: I620a209406dd021f3e8e1dafcfb381631dfd25d2 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Adds support for SPNEGOLaurent Goujon2014-05-212-0/+72
| | | | | | | | | | Adds support for Negotiate(SPNEGO) HTTP authentication method. This method is set to have a higher priority as Digest HTTP authentication method. Bug: 428836 Change-Id: Ib181096d39f538df1dd7d3f36516843777bf12ae Signed-off-by: Laurent Goujon <lgoujon@twitter.com> Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
* Creates HttpAuthMethod type enum to support auth orderingLaurent Goujon2014-05-212-18/+76
| | | | | | | | | | Refactors HttpAuthMethod to support more authentication methods, still sorted by priority orders. Bug: 428836 Change-Id: I049c1742e7afbc51f3f6033fa4d471b344813cfa Signed-off-by: Laurent Goujon <lgoujon@twitter.com> Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
* Detects background authentication and force use of jgit authenticationLaurent Goujon2014-05-211-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | Sun HttpURLConnection is able to handle authentication like SPNEGO without caller intervention. However, there are some restrictions: - do not need user direct input (user,password for example) - it doesn't work when request body is chunked/streamed (because it cannot be replayed) Unfortunately there is no real way to leverage HttpURLConnection authentication work as the authentication header is stripped off the request before returning to the caller. There's also no way to explicitly disable authentication in HttpURLConnection (SPNEGO auth will always be attempted if a valid token can be created by GSSAPI). This is an issue for jgit since it is expected that the first request will be used to detect authentication method, and reuse for the subsequent requests. This patch modifies TransportHTTP to detect authentication done in the background by HttpURLConnection and sets the jgit authentication method accordingly so it will always work for future requests (assuming that the authentication method used by HttpURLConnection is also supported by jgit). Bug: 428836 Change-Id: I79f3b70ca2b8377e20da8e6a01914e43e96595ce Signed-off-by: Laurent Goujon <lgoujon@twitter.com> Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
* Adds GSSManager factory class, to be used for SPNEGO HTTP authenticationLaurent Goujon2014-05-211-0/+158
| | | | | | | | | | | | | | | | | Adds a factory class for GSSManager. GSSManager is already a factory class but it doesn't work well with SPNEGO HTTP authentication unless the javax.security.auth.useSubjectCredsOnly system property is set to false. On Sun JDK, Sun GSSManagerImpl can be configured directly for SPNEGO auth (without setting any system property). For a better experience, the class availability is detected by reflection and used instead. Detection is only done once, and fallbacks to org.ietf.jgss.GSSManager. Bug: 428836 Change-Id: Idb9123d1f4013966919db43043ec959d4b133ae2 Signed-off-by: Laurent Goujon <lgoujon@twitter.com> Signed-off-by: Chris Aniszczyk <caniszczyk@gmail.com>
* blame: Revert common subtree elimination "optimization"Shawn Pearce2014-05-192-42/+3
| | | | | | | | | | | | | | | | This partially reverts 6de12836d72fe4cba9afc297c8988c6fff851fa9. Performing a TreeWalk over 2 trees to identify and skip unmodified subtrees to pass all blame onto an ancestor appears to be a micro optimization that works for a very limited number of files. In the general case the 2 tree walk is slowing down blame more than it helps to speed it up. I keep coming up with files in multiple repositories where 6de128 is making things worse, not better, and only one example where it actually improved performance, render_view_impl.cc in chromium as described in the commit message. Change-Id: Ic6d5fff22acb5ab6485614a07bdb388e8c336679
* Merge "Cherry-Pick: Support --mainline to pick merges"Robin Rosenberg2014-05-194-9/+101
|\
| * Cherry-Pick: Support --mainline to pick mergesKonrad Kügler2014-05-174-9/+101
| | | | | | | | | | | | | | | | By specifying a mainline parent, a merge is cherry picked as if this parent was its only parent. If no mainline parent is given, cherry picking merges is not allowed, as before. Change-Id: I391cb73bf8f49e2df61428c17b40fae8c86a8b76 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | Fix a number of failing conflict situationsRobin Rosenberg2014-05-175-46/+486
| | | | | | | | | | | | | | | | | | | | | | | | | | Adds further tests where the working tree is dirty (differs from index) and where we have staged but uncommitted changes. Fixed the test case 9 for file/directory conflicts. Bug: 428819 Change-Id: Ie44a288b052abe936ebb74272d0fefef3b218a7a Signed-off-by: Axel Richard <axel.richard@obeo.fr> Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com> Signed-off-by: Christian Halstrick <christian.halstrick@sap.com>
* | Merge "Archive: Add the ability to select one or more paths."Robin Rosenberg2014-05-172-0/+236
|\ \
| * | Archive: Add the ability to select one or more paths.Shaul Zorea2014-05-142-0/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, it was only possible to archive the entire repository. This patch introduces the ability to select specific files and directories to archive. Archiving the entire repository remains the default behaviour. org.eclipse.jgit.api.ArchiveCommand: Adding setPaths(String... paths) method. Change-Id: Iedcd40fbfd71238b0088174bbe2717fae196e047 Signed-off-by: Shaul Zorea <shaulzorea@gmail.com>
* | | Fix failing ConfigTest on WindowsRobin Rosenberg2014-05-171-23/+7
| |/ |/| | | | | | | | | Trust the detection of features and just test CoreConfig. Change-Id: I37f838d270a221a75d0d3842ba2f3f90aa1d6f01
* | Merge "Command line: implement checkout -- <path>"Matthias Sohn2014-05-163-4/+45
|\ \
| * | Command line: implement checkout -- <path>Matthias Sohn2014-05-123-4/+45
| | | | | | | | | | | | Change-Id: I3d261e6541fe0fcaa210587d2aa226e153071351 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Rebase: Write an empty "quiet" file to make C Git happyKonrad Kügler2014-05-161-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | C git tries to read this file from the rebase state directory and complains about it not being there for rebases started by JGit. An empty 'quiet' file represents the (verbose) default. Change-Id: I1844ccbf8d35442d7a8918b57b67eb9b9efd6352 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | | Fix wrong Exception messagesChristian Halstrick2014-05-142-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In two places we threw an IOException and the message was built using JGitText.couldNotWriteFile. We specified 2 parameters, but this pattern expects only one parameter. In both places we tried to rename a file, that's why we wanted two parameters (src and target) for the exception text. I changed it to use JGitText.renameFileFailed which accepts two parameters and fits better. Change-Id: Ib8c2cf78f2b26ca2b97754fe91fdb20b30392415 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Merge "LsTree: quote paths in output"Robin Rosenberg2014-05-121-1/+2
|\ \ \ | |/ / |/| |
| * | LsTree: quote paths in outputDave Borowitz2014-05-071-1/+2
| | | | | | | | | | | | Change-Id: Ic78d5b41e057fcd3282e97ac73ed506666f28f88
* | | Fix javadoc errors caused by missing tags for declared exceptionsTomasz Zarna2014-05-121-0/+3
| | | | | | | | | | | | | | | Change-Id: I587aae0ad217ed092f061682ffa66c724f221096 Signed-off-by: Tomasz Zarna <tomasz.zarna@tasktop.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | Handle repo copyfile in bare repositories.Yuxuan 'fishy' Wang2014-05-095-35/+145
| | | | | | | | | | | | | | | Change-Id: Ie06f0c3d1bc9b2123102efaa5542ec3c232b72cd Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* | | Handle the revision attribute in repo manifest.Yuxuan 'fishy' Wang2014-05-093-32/+219
| | | | | | | | | | | | | | | Change-Id: I77fe073aeb13c58029551b7d6e1451a9b62dc766 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* | | Handle repo submodules for bare repositories.Yuxuan 'fishy' Wang2014-05-074-15/+245
|/ / | | | | | | | | Change-Id: Id028a7bc9600baf0f3e2316a1f4b99e53ccc746a Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* / Fix manifests of source bundlesMatthias Sohn2014-05-074-8/+8
|/ | | | | | | | | | | | - don't mark them as singleton to allow coexistence of multiple versions in the same installation - add missing version qualifier to Eclipse-SourceBundle header see https://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg10524.html Change-Id: Ie4e028038f5a1d3e18b0be06c3d2ea82e7f9068d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge changes I9ba0e70f,I1f38e055,Idb55a303Dave Borowitz2014-05-064-8/+137
|\ | | | | | | | | | | | | * changes: Do not rewrite parents in RevWalkTextBuiltins RevWalk: Allow disabling parent rewriting RevWalkTextBuiltin: Add -n to limit number of commits returned
| * Do not rewrite parents in RevWalkTextBuiltinsDave Borowitz2014-05-051-4/+8
| | | | | | | | | | | | | | | | Default behavior of C git is to skip parent rewriting unless particular history simplification or --parents flags are passed. Since JGit has no such flags, JGit should not rewrite parents. Change-Id: I9ba0e70fe6d5f49f975b71eea46f93198900f37d
| * RevWalk: Allow disabling parent rewritingDave Borowitz2014-05-053-3/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, setting any TreeFilter on a RevWalk triggered parent rewriting, which in the current StartGenerator implementation ends up buffering the entire commit history in memory. Aside from causing poor performance on large histories, this does not match the default behavior of `git rev-list`, which does not rewrite parent SHAs unless asked to via --parents/--children. Add a new method setRewriteParents() to RevWalk to disable this behavior. Continue rewriting parents by default to maintain backwards compatibility. Change-Id: I1f38e05526071c75ca58095e312663de5e6f334d
| * RevWalkTextBuiltin: Add -n to limit number of commits returnedDave Borowitz2014-05-051-1/+5
| | | | | | | | | | | | Implementing the -<#> flag from C git is less trivial. Change-Id: Idb55a303304a6d4055aaf37d0b4dcf92c684e25f
* | Allow callers to use different merging strategiesLaurent Goubet2014-05-066-14/+96
| | | | | | | | | | Signed-off-by: Laurent Goubet <laurent.goubet@obeo.fr> Change-Id: I84e9d7b4b772b4ad7d3e7010aad78291d4d178fe
* | Prepare 3.4.0-SNAPSHOT buildsMatthias Sohn2014-05-0655-59/+59
|/ | | | Change-Id: I5cf20c875c3e92e12c2b22465774ba42513b9add Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* JGit v3.4.0.201405051725-m7v3.4.0.201405051725-m7Matthias Sohn2014-05-0555-59/+59
| | | | | Change-Id: I8d941d22becdf019199a1c0fe28aa5835038647d Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Merge "Make the resolve merger slightly more sub-classable."Robin Rosenberg2014-05-051-29/+125
|\
| * Make the resolve merger slightly more sub-classable.Laurent Goubet2014-03-061-29/+125
| | | | | | | | | | Change-Id: I7d2a90288696ee66887cc01d8a3ec2f6f28a0339 Signed-off-by: Laurent Goubet <laurent.goubet@obeo.fr>
* | Merge "blame: Fix merges, where merge result differs only by whitespace"Shawn Pearce2014-05-042-2/+34
|\ \
| * | blame: Fix merges, where merge result differs only by whitespaceKonrad Kügler2014-05-032-2/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When blaming a merge commit with "Ignore whitespace changes" enabled, don't discard blame candidates for other parents when we encounter a parent that only has whitespace changes compared to the merge result. The algorithm early prepares parents for blaming, removing the appropriate blame regions from the list of regions still to blame. Only at the end, the prepared blame candidates are submitted for blaming. When looking at a non-first parent which only differs in whitespace to the merge result, it submitted that parent, but only to blame it for the (usually few) lines not already prepared to blame on other parents. Due to an early return the blame candidates for the previous parents were forgotten, leaving many lines unannotated. bug: 433024 Change-Id: I43c9caf2078b92b05e652dbed2192568907bf199 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | | Update 4.4 target to use Luna M7 orbit repositoryMatthias Sohn2014-05-041-5/+5
| | | | | | | | | | | | | | | Change-Id: I9a19d5584deef970cc00a7b58beae84d55b20ddf Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | | AbstractPlotRenderer: Make private methods static where applicableKonrad Kügler2014-05-031-3/+3
| | | | | | | | | | | | Change-Id: Iaf02502b02b2420c059f04bbe09254941301c727 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | | PlotLane: Use identity hashCode and equalsKonrad Kügler2014-05-033-18/+0
|/ / | | | | | | | | | | | | Using the lane position and other data for equals/hashCode is not useful. Change-Id: I7af151d8a84544a77a486474c8ac71dd80090c66 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | Fix push to repo with non-fetched refsJean-Jacques Lafay2014-04-302-3/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When JGit uses bitmaps (which is the case after a gc), the push command doesn't go through the code where MissingObjectExceptions are caught for remote objects not found locally. Fixed by removing earlier non-locally-found remote objects. This was seen withing gerrit, see: https://code.google.com/p/gerrit/issues/detail?id=2025 Bug: 426044 Change-Id: Ieda718a0530e3680036edfa0963ab88fdd1362c0 Signed-off-by: Jean-Jacques Lafay <jeanjacques.lafay@gmail.com> Signed-off-by: Doug Kelly <dougk.ff7@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Make org.eclipse.jgit.packaging a general projectRobin Rosenberg2014-04-281-0/+40
| | | | | | | | | | | | This makes it easy to edit the pom.xml from within Eclipse. Change-Id: I4718217caadbfe892b7cbb557e0d3d6b40d48321 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Merge changes I2515a6ed,Ib6b24035Matthias Sohn2014-04-273-6/+94
|\ \ | | | | | | | | | | | | | | | * changes: Fix ArrayIndexOutOfBoundsException in CreateBranchCommand Add methods to Repository to handle remote names
| * | Fix ArrayIndexOutOfBoundsException in CreateBranchCommandRobin Rosenberg2014-04-271-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If remote name contains / or there was a branch directly under the refs/remotes namespace (wrong) the computation of remote name and suggested local branch name would fail. Fix this by looking at the configured remotes. A ref under refs/remotes that does not match a remote configuration is not considered a remote tracking branch anymore. This patch does not fix all similar errors in EGit/JGit. Bug: 411002 Bug: 400414 Change-Id: I2515a6ed05f9104c387ce4e43b24dae942ae2473
| * | Add methods to Repository to handle remote namesRobin Rosenberg2014-04-272-0/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of requiring the caller to know how to list remote names or parse remote branch names, add a few utilities for that. Change-Id: Ib6b2403532f4abbce594a03c0b9da49d30b19f70 Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
* | | Fix BlameResult.computeRange JavaDoc to exclude end indexKonrad Kügler2014-04-261-2/+2
|/ / | | | | | | Change-Id: Ifd7dd86e3848eb7a522ba5c49d5c216777484f3b Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* | Add API to permit the setting of additional HTTP headersBogdan Gheorghe2014-04-252-0/+157
| | | | | | | | | | Signed-off-by: Bogdan Gheorghe <gheorghe@ca.ibm.com> Change-Id: I1047f318bb5c63850f45ba85d73c97fe8bf70a6c
* | cleanup: remove some unused importsRobin Rosenberg2014-04-251-4/+0
| | | | | | | | Change-Id: I549b934b86753acc362364c8986bfe6457affd12
* | Making ArchiveFormats breaks the API, but that's okRobin Rosenberg2014-04-251-0/+38
| | | | | | | | | | | | Add compatibility filters to hide the breakage. Change-Id: Icc1fdc29f15d734d488e49c9c37a18f5ac937903
* | Add jacoco instrumentation for code coverage reportsMatthias Sohn2014-04-261-0/+31
| | | | | | | | | | | | | | See http://mickaelistria.wordpress.com/2012/10/08/sonar-at-eclipse-org/ Change-Id: Idd7df8125e0792e9bba924eadbc1320230cfa624 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Merge changes Ia4df9808,I83e8a321,Id0e7663b,Ib809b00c,I88a6ee07Shawn Pearce2014-04-2511-0/+942
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * changes: Commit changes generated during repo command Added implementation of copyfile rule. Added groups support to repo subcommand. Added the command line of jgit repo. Implemented first part of the repo sub-command.