summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test/tst
Commit message (Collapse)AuthorAgeFilesLines
* Fix PackWriterBitmapWalker handling non-existing uninteresting objectsChristian Halstrick2014-09-251-0/+29
| | | | | | | | | | | | | | | | | | | When writing new packs it should be allowed to specify objects as "have" (objects which should not be included in the pack) which do not exist in the local repository. This works with the traditional PackWriter, but when PackWriter was working on a repository with bitmap indexes and used PackWriterBitmapWalker then this feature was broken. Non-existing "have" objects lead to MissingObjectExceptions. That broke push and Gerrit replication. When the replication target had branches unknown to the replication source then the source repository wanted to build pack files where "have" included branch-tips which were unknown in the source repository. Bug: 427107 Change-Id: I6b6598a1ec49af68aa77ea6f1f06e827982ea4ac Also-by: Matthias Sohn <matthias.sohn@sap.com>
* PlotCommitList: Close plot lanes at root commitsKonrad Kügler2014-09-021-0/+38
| | | | | Bug: 443006 Change-Id: I40b1eb044fa2d9e6c5d4b956c17e32ca6c1bd39f Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* Handle -m option for Merge commandAxel Richard2014-08-301-1/+64
| | | | | | | | | Set the commit message to be used for the merge commit (in case one is created) Bug: 442886 Change-Id: Ie5ecc13822faa366f00b3daa07f74c8441cae195 Signed-off-by: Axel Richard <axel.richard@obeo.fr> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Let ObjectWalk.markUninteresting also mark the root tree asSaša Živkov2014-08-281-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | uninteresting Using the ObjectWalk and marking a commit as uninteresting didn't mark its root tree as uninteresting. This caused the "missing tree ..." error in Gerrit under special circumstances. For example, if the patch-set 2 changes only the commit message then the patch-set 1 and patch-set 2 share the same root-tree: ps1 -> o o <- ps2 \ / o root-tree The transported pack will contain the ps2 commit but not the root-tree object. When using the BaseReceivePack.setCheckReferencedObjectsAreReachable JGit will check the reachability of all referenced objects not provided in the transported pack. Since the ps1 was advertised it will properly be marked as uninteresting. However, the root-tree was reachable because the ObjectWalk.markUninteresting missed to mark it as uninteresting. JGit was then rejecting the pack with the "missing tree ..." exception. Gerrit-issue: https://code.google.com/p/gerrit/issues/detail?id=1582 Change-Id: Iff2de8810f14ca304e6655fc8debeb8f3e20712b Signed-off-by: Saša Živkov <sasa.zivkov@sap.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Strip "<", ">", and "\n" from name/email in UserConfigRobin Stocker2014-08-211-0/+14
| | | | | | | | | | | This matches what C Git does, see "stripped" in `man git-commit-tree`. It also fixes the bug of the user where an user.email like "<>" would show up as "<<>>" in EGit. Bug: 439844 Change-Id: I567a3c620e191ce9d37d318417e63cb5d4483419 Signed-off-by: Robin Stocker <robin@nibor.org>
* Support remote aliases in repo manifest.Yuxuan 'fishy' Wang2014-08-181-0/+24
| | | | | Change-Id: Icbe5761b9d8a4ae5305bfe45b2d042f214156fc8 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* Support non-default remotes in project tag.Yuxuan 'fishy' Wang2014-08-181-0/+30
| | | | | Change-Id: I3c730a1ce379d142d3ed81dda4a73f86f1f9c3eb Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* Add tests for checking out tags with CheckoutCommandRobin Stocker2014-08-171-3/+29
| | | | | Change-Id: Ifec3ac59264c91e154b832fdd907736faf8a8412 Signed-off-by: Robin Stocker <robin@nibor.org>
* Add support to <include> tag in repo manifest xml.Yuxuan 'fishy' Wang2014-08-131-0/+40
| | | | | Change-Id: I32d468f92e24701ea680435bf3417e3850857303 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* Revert "Add a method to DfsOutputStream to read as an InputStream"Shawn Pearce2014-08-131-150/+0
| | | | | | | | | | | This reverts commit b646578d89513c5db30151f0b865c7335c88d682. openInputStream() is never used in JGit, nor is it used by any known working DFS implementation. The method was added as a utility for reading back from a DfsInserter, but the final implementation of that feature does not requrire this method. Change-Id: I075ad95e40af49c92b554480f8993ef5658f7684
* Add a method to ObjectInserter to read back inserted objectsDave Borowitz2014-08-131-0/+175
| | | | | | | | | | | | | | | | | | In the DFS implementation, flushing an inserter writes a new pack to the storage system and is potentially very slow, but was the only way to ensure previously-inserted objects were available. For some tasks, like performing a series of three-way merges, the total size of all inserted objects may be small enough to avoid flushing the in-memory buffered data. DfsOutputStream already provides a read method to read back from the not-yet-flushed data, so use this to provide an ObjectReader in the DFS case. In the file-backed case, objects are written out loosely on the fly, so the implementation can just return the existing WindowCursor. Change-Id: I454fdfb88f4d215e31b7da2b2a069853b197b3dd
* Fix CheckoutCommand not setting up trackingRobin Stocker2014-08-052-17/+59
| | | | | | | | | | | | | Instead of passing on the start point as is to CreateBranchCommand, the resolved ObjectId was used. Given this, CreateBranchCommand did not set up tracking. This also fixes CreateBranchCommand with setStartPoint(null) to use HEAD (instead of NPEing), as documented in the Javadoc. Bug: 441153 Change-Id: I5ed82b4a4b4a32a81a7fa2854636b921bcb3d471 Signed-off-by: Robin Stocker <robin@nibor.org>
* Merge "Add isRebase to API of BranchConfig"Robin Rosenberg2014-08-031-0/+16
|\
| * Add isRebase to API of BranchConfigRobin Stocker2014-08-031-0/+16
| | | | | | | | | | Change-Id: I9819f49410e30d32c2157db0556a0dd6a0bcc5a4 Signed-off-by: Robin Stocker <robin@nibor.org>
* | NetRC parser and credentials provider.Alexey Kuznetsov2014-08-031-0/+191
|/ | | | | | | | | Adds default git command line behaviour of reading credentials for https connections from .netrc file. Bug: 428229 Change-Id: I88699ca5da6a20bdeaed24b7e3899cc1022b8e7c Signed-off-by: Alexey Kuznetsov <axet@me.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Add IndexDiff tests for merge conflict state BOTH_ADDEDLaurent Goubet2014-08-021-0/+116
| | | | | | | | | JGit handled this case improperly which these tests demonstrate. Fixed by I25915880f304090fe90584c79bddf021231227a2. Bug: 440537 Change-Id: Ia29c1d6cf8c0ce724cc3ff5ed9e0b396949b44bf Signed-off-by: Laurent Goubet <laurent.goubet@obeo.fr> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* IndexDiffFilter should never filter entries with stage!=0Christian Halstrick2014-08-021-0/+25
| | | | | | | | | | | If the IndexDiffFilter is asked whether it should include or filter out a certain path and for that path there is a dircache entry with a stage different from 0, then the filter should never filter out this entry. IndexDiffFilter is an optimized version of AnyDiffFilter and there is no case where the index contains non-0 stages but we still don't see any diff for that path. Change-Id: I25915880f304090fe90584c79bddf021231227a2 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Fix RevertCommand to correctly revert multiple commits at once.Maik Schreiber2014-07-301-0/+100
| | | | | | | | The fix is to move the new head commit to the newly-created revert commit, so that additional revert commits will use the correct head. Change-Id: I5de3a9a2a4c276e60af732e9c507cbbdfd1a4652 Signed-off-by: Maik Schreiber <blizzy@blizzy.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Remove overlapping submodules from repo manifest.Yuxuan 'fishy' Wang2014-07-291-0/+59
| | | | | | | | | | | Apparently repo allows projects overlapping, e.g. one project's path is "foo" and another project's path is "foo/bar". This is not supported in git submodule. At JGit repo side we'll skip all the submodules that are in subdirectories of other submodules, and on repo side we'll make them submodules to resolve this problem. Change-Id: I6820c4ef400c530a36150b1228706adfcc43ef64 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* Merge "RecursiveMerger should not fail on content-merge conflicts of parents"Christian Halstrick2014-07-291-0/+83
|\
| * RecursiveMerger should not fail on content-merge conflicts of parentsChristian Halstrick2014-07-281-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously when RecursiveMerger was trying to create a single virtual common base for the merge it was failing when this lead to content-merge conflicts. This is different from what native git is doing. When native git's recursive merge algorithm creates a new common base it will merge the multiple parents and simply take the merge result (potentially including conflict markers) as common base. See my discussion with Shawn here: http://www.spinics.net/lists/git/msg234959.html : > - How should workingtree, index (stage1,2,3) look like if during that > merge of common ancestors a conflict occurs? Will I see in stage2 and > stage3 really see content of X1 and X2? Its done entirely in memory and never touches the working tree or index. When a conflict exists in the X1-X2 merge the conflict is preserved into the new virtual base. There is still the possibility that the merge of parents lead to conflicts. File/Folder conclicts, conflicts on filemodes. This commit only fixes the situation for conflicts when merging content. Bug: 438203 Change-Id: If45bc3d078b3d3de87b758e71d7379059d709603
* | Strip trailing /s in repo base URI.Yuxuan 'fishy' Wang2014-07-281-1/+1
|/ | | | | Change-Id: I71040db2cca69638cfad89acdc9179ee80592b27 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* Fix RecursiveMerger's internal use of merge to find a merge baseChristian Halstrick2014-07-251-1/+179
| | | | | | | | | | | | | | | | | | When RecursiveMerger tried to determine a common base tree it was recursively tried to merge multiple common bases. But these intermediate merges which have just been done to determine a single common base for the final merge already filled some important fields (toBeCheckedOut, toBeDeleted, ...). These side effects of the intermediate merges led to wrong results of the final merge. One symptom was that after a recursive merge which should be succesful you could still see leftover files in the worktree: files which existed in the (virtual) common base but which don't exist anymore in the branches to be merged. The solution is easy: Clear the appropriate fields after common base determination and start the final merge with a clean state. Change-Id: I644ea9e1cb15360f7901bc0483cdb9286308c226 Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
* Handle initial checkout correctlyChristian Halstrick2014-07-251-0/+19
| | | | | | | | | | As described in native gits file "git-read-tree.txt" git has in a special mode when doing the "initial" checkout. "Initial" means that the index is empty before the checkout. This was not handled correctly in JGit and is fixed in this commit. Also see https://github.com/git/git/blob/master/Documentation/git-read-tree.txt#L181 Change-Id: I9b9d1bd9ebf349cfca420c891c7b099a18d07ba4
* Preserve merges during pull if configured to do soKonrad Kügler2014-07-151-0/+207
| | | | | | | | | | Setting branch.<name>.rebase or pull.rebase to 'preserve' will preserve merges during rebase. Also, pull.rebase is now consulted if there is no branch-specific configuration. Bug: 429664 Change-Id: I345fa295c7e774e0d0a8e6aba30fbfc3552e0084 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* Rebase: Add --preserve-merges supportKonrad Kügler2014-07-151-0/+278
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With --preserve-merges C Git re-does merges using the rewritten merge parents, discarding the old merge commit. For the common use-case of pull with rebase this is unfortunate, as it loses the merge conflict resolution (and other fixes in the merge), which may have taken quite some time to get right in the first place. To overcome this we use a two-fold approach: If any of the (non-first) merge parents of a merge were rewritten, we also redo the merge, to include the (potential) new changes in those commits. If only the first parent was rewritten, i.e. we are merging a branch that is otherwise unaffected by the rebase, we instead cherry-pick the merge commit at hand. This is done with the --mainline 1 and --no-commit options to apply the changes introduced by the merge. Then we set up an appropriate MERGE_HEAD and commit the result, thus effectively forging a merge. Apart from the approach taken to rebase merge commits, this implementation closely follows C Git. As a result, both Git implementations can continue rebases of each other. Preserving merges works for both interactive and non-interactive rebase, but as in C Git it is easy do get undesired outcomes with interactive rebase. CommitCommand supports committing merges during rebase now. Bug: 439421 Change-Id: I4cf69b9d4ec6109d130ab8e3f42fcbdac25a13b2 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* Cherry-Pick: Support --no-commitKonrad Kügler2014-07-141-2/+46
| | | | Change-Id: Ic4c313a8971a5aa15745518c49e2587a1a0fe8d4 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de>
* Handle diff formatting when there is nothing to compare withRobin Rosenberg2014-07-061-0/+78
| | | | | | | | DiffFormatter now suports either side being null and the log program will output the diff for the first commit. Bug: 395791 Change-Id: I378957b57e9ad1f7195ba416f402178453f0ebd3
* Eliminate warning about overlapping variable namesRobin Rosenberg2014-07-041-5/+5
| | | | Change-Id: I7e749092c5b51e2857c186088e2c5c6c6d295367
* Merge branch 'stable-3.4'Matthias Sohn2014-06-211-1/+33
|\ | | | | | | | | | | | | | | | | | | * stable-3.4: Prepare 3.4.2-SNAPSHOT builds JGit v3.4.1.201406201815-r Allow retrying connecting SshSession in case of an exception Change-Id: I7efb009b9e012637a16c57e2e93e074023b8e46c Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
| * Allow retrying connecting SshSession in case of an exceptionStefan Lay2014-06-201-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Connecting to an SshSession may fail due to different reasons. Jsch for example often throws an com.jcraft.jsch.JschException: verify: false.[1] The issue is still not fixed in JSch 0.1.51. In such a case it is worth retrying to connect. The number of connection attempts can be configured using ssh_config parameter "ConnectionAttempts" [2]. Don't retry if the user canceled authentication. [1] http://sourceforge.net/p/jsch/bugs/58/ [2] http://linux.die.net/man/5/ssh_config Bug: 437656 Change-Id: I6dd2a3786b7d3f15f5a46821d8edac987a57e381 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* | Rename RewriteTreeFilter to TreeRevFilter and make it publicDave Borowitz2014-06-121-0/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current behavior of passing a TreeFilter to RevWalk has limited usefulness, since the RevFilter derived from the TreeFilter is always ANDed together with any other RevFilters. It is also tied fairly tightly to the parent rewriting mechanism. Make TreeRevFilter a generic RevFilter that matches modified paths against any TreeFilter. This allows for more complex logic like (modified this path OR authored by this person). Leave the rewrite flag logic in this class, since it's closely tied to the parent comparison code, but hidden behind a protected constructor. Change-Id: Ia72ef591a99415e6f340c5f64583a49c91f1b82f
* | Merge "Unit test for the updating behavior in RepoCommand API."Shawn Pearce2014-05-271-47/+148
|\ \
| * | Unit test for the updating behavior in RepoCommand API.Yuxuan 'fishy' Wang2014-05-271-47/+148
| |/ | | | | | | | | | | | | | | | | When update the manifest against a bare repository, RepoCommand will replace every existing content from the repository with contents populated from the manifest. Added note for that and a unit test to make sure this behavior. Change-Id: I1d5960e84bca5aa2a4e86f424d2ddd4197894cdc Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* / Remove a bit of repetition and casting in PackFileTestRoberto Tyley2014-05-261-7/+4
|/ | | | | | | | | PackFileTest lives in o.e.j.internal.storage.file, so I think it's OK for it to acknowledge the existence of FileRepository in order to avoid some unnecessary casting, and probably nicer to avoid the repetition too. Change-Id: I0de592a32f6178e6d6bf114848101e185b3111a1 Signed-off-by: Roberto Tyley <roberto.tyley@gmail.com>
* Allow to include untracked files in stash operations.Andreas Hermann2014-05-222-4/+133
| | | | | | | | | | | Unstashed changes are saved in a commit which is added as an additional parent to the stash commit. This behaviour is fully compatible with C Git stashing of untracked files. Bug: 434411 Change-Id: I2af784deb0c2320bb57bc4fd472a8daad8674e7d Signed-off-by: Andreas Hermann <a.v.hermann@gmail.com>
* Fix for reflog corruption caused by multiline messageAndreas Hermann2014-05-221-0/+96
| | | | | | | | | | | | | | | | | If a client passes a multiline message as argument to ReflogWriter.log() the Reflog gets corrupted and cannot be parsed. ReflogWriter.log() is invoked implicitly from various commands such as StashCreate, Rebase and many more. However the message is not always filtered for line feeds. Such an example is the StashCreateOperation of EGit which passes unchecked user input as commit message. If a multiline comment is pasted to the stash create dialog, the reflog gets corrupted. ReflogWriter now replaces line endings in log message with spaces. Bug: 435509 Change-Id: I3010cc902e13bee4d7b6696dfd11ab51062739d3 Signed-off-by: Andreas Hermann <a.v.hermann@gmail.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Improve layout of branches in the commit graphKonrad Kügler2014-05-221-52/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The aim of this change is to place all commits of a branch on the same lane and commits of other (side) branches on different lanes. The algorithm treats first parents of a commit specially by placing them on the same lane as the commit itself. When a commit is the first parent of multiple children it could be placed on any of these children's lanes. In this case it is placed on the longest child lane, as this is usually the lane of the branch the commit actually was made on. Other (non-first) parents are placed on new lanes. This creates a layout that should make it easier to see branches and merges and follow linear branch histories. This differs from the previous approach, which sometimes plotted the commits of a side branch on the same lane as the base branch commits and further commits on the base branch appeared on a different lane. This made the base branch appear as if it was the side branch and the side branch appears to be the base branch. In addition to lane assignment, also the plotting code changed to start drawing a branch lane from the commit where it forks out. Previously it started only when the first commit on the branch appeared. Active lanes are continued with every commit that is processed. Previously lanes were only continued when the next commit on the lane was encountered. This could produce (temporarily) dangling commits if the next commit on the lane was not processed yet. CQ: 8299 Bug: 419359 Bug: 434945 Change-Id: Ibe547aa24b5948ae264f7d0f56a492a4ef335608 Signed-off-by: Konrad Kügler <swamblumat-eclipsebugs@yahoo.de> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
* Adds support for SPNEGOLaurent Goujon2014-05-211-0/+9
| | | | | | | | | | 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>
* Merge "Cherry-Pick: Support --mainline to pick merges"Robin Rosenberg2014-05-191-0/+58
|\
| * Cherry-Pick: Support --mainline to pick mergesKonrad Kügler2014-05-171-0/+58
| | | | | | | | | | | | | | | | 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-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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-171-0/+211
|\ \ | |/ |/|
| * Archive: Add the ability to select one or more paths.Shaul Zorea2014-05-141-0/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Handle repo copyfile in bare repositories.Yuxuan 'fishy' Wang2014-05-091-1/+39
| | | | | | | | | | Change-Id: Ie06f0c3d1bc9b2123102efaa5542ec3c232b72cd Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* | Handle the revision attribute in repo manifest.Yuxuan 'fishy' Wang2014-05-091-6/+125
| | | | | | | | | | Change-Id: I77fe073aeb13c58029551b7d6e1451a9b62dc766 Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* | Handle repo submodules for bare repositories.Yuxuan 'fishy' Wang2014-05-071-0/+41
|/ | | | | Change-Id: Id028a7bc9600baf0f3e2316a1f4b99e53ccc746a Signed-off-by: Yuxuan 'fishy' Wang <fishywang@google.com>
* RevWalk: Allow disabling parent rewritingDave Borowitz2014-05-051-0/+94
| | | | | | | | | | | | | | | 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
* blame: Fix merges, where merge result differs only by whitespaceKonrad Kügler2014-05-031-0/+31
| | | | | | | | | | | | | | | | | | | 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>
* Fix push to repo with non-fetched refsJean-Jacques Lafay2014-04-301-1/+70
| | | | | | | | | | | | | | | | | 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>