summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-05-09git-svn: added an --include-path flagLibravatar Paul Walmsley5-3/+180
The SVN::Fetcher module is now able to filter for inclusion as well as exclusion (as used by --ignore-path). Also added tests, documentation changes and git completion script. If you have an SVN repository with many top level directories and you only want a git-svn clone of some of them then using --ignore-path is difficult as it requires a very long regexp. In this case it's much easier to filter for inclusion. [ew: remove trailing whitespace] Signed-off-by: Paul Walmsley <pjwhams@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net>
2013-05-09Git::SVN::*: add missing "NAME" section to perldocLibravatar Jonathan Nieder4-0/+8
lexgrog(1) relies on the NAME section to find a manpage's subject's name and description for easy access later using "man -k". Add the section it expects. Noticed using lintian. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net>
2013-05-09git-svn: avoid self-referencing mergeinfoLibravatar Michael Contreras2-4/+8
When svn.pushmergeinfo is set, the target branch is included in the mergeinfo if it was previously merged into one of the source branches. SVN does not do this. Remove merge target branch path from resulting mergeinfo when svn.pushmergeinfo is set to better match the behavior of SVN. Update the svn-mergeinfo-push test. [ew: 80 columns] Signed-off-by: Michael Contreras <michael@inetric.com> Reported-by: Avishay Lavie <avishay.lavie@gmail.com> Acked-by: Eric Wong <normalperson@yhbt.net>
2013-05-07Update draft release notes for 1.8.3Libravatar Junio C Hamano1-2/+3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-07remote-helpers: trivial cleanupLibravatar Felipe Contreras1-1/+0
The comment was copied from hg-fast-export, not used anymore. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-07remote-bzr: fix for disappeared revisionsLibravatar Felipe Contreras2-4/+49
It's possible that the previous tip goes away, we should not assume it's always present. Fortunately we are only using it to calculate the progress to display to the user, so only that needs to be fixed. Also, add a test that triggers this issue. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-07Merge git://github.com/git-l10n/git-poLibravatar Junio C Hamano5-2669/+3650
* git://github.com/git-l10n/git-po: l10n: zh_CN.po: translate 44 messages (2080t0f0u) l10n: de.po: translate 44 new messages l10n: Update Vietnamese translation (2080t0f0u) l10n: Update Swedish translation (2080t0f0u) l10n: git.pot: v1.8.3 round 2 (44 new, 12 removed)
2013-05-08l10n: zh_CN.po: translate 44 messages (2080t0f0u)Libravatar Jiang Xin1-530/+728
Translate 44 new messages came from git.pot update in c6bc7d4 (l10n: git.pot: v1.8.3 round 2 (44 new, 12 removed)) Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
2013-05-07l10n: de.po: translate 44 new messagesLibravatar Ralf Thielow1-554/+774
Translate 44 new messages came from git.pot update in c6bc7d4 (l10n: git.pot: v1.8.3 round 2 (44 new, 12 removed)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> Acked-by: Thomas Rast <trast@inf.ethz.ch>
2013-05-06Merge branch 'jk/merge-tree-added-identically'Libravatar Junio C Hamano2-1/+56
* jk/merge-tree-added-identically: merge-tree: handle directory/empty conflict correctly
2013-05-06merge-tree: handle directory/empty conflict correctlyLibravatar John Keeping2-1/+56
git-merge-tree causes a null pointer dereference when a directory entry exists in only one or two of the three trees being compared with no corresponding entry in the other tree(s). When this happens, we want to handle the entry as a directory and not attempt to mark it as a file merge. Do this by setting the entries bit in the directory mask when the entry is missing or when it is a directory, only performing the file comparison when we know that a file entry exists. Reported-by: Andreas Jacobsen <andreas@andreasjacobsen.com> Signed-off-by: John Keeping <john@keeping.me.uk> Tested-by: Andreas Jacobsen <andreas@andreasjacobsen.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-06Merge branch 'fc/remote-bzr'Libravatar Junio C Hamano2-81/+298
* fc/remote-bzr: remote-bzr: avoid bad refs remote-bzr: convert all unicode keys to str remote-bzr: access branches only when needed remote-bzr: delay peer branch usage remote-bzr: iterate revisions properly remote-bzr: improve progress reporting remote-bzr: add option to specify branches remote-bzr: add custom method to find branches remote-bzr: improve author sanitazion remote-bzr: add support for shared repo remote-bzr: fix branch names remote-bzr: add support for bzr repos remote-bzr: use branch variable when appropriate remote-bzr: fix partially pushed merge remote-bzr: fixes for branch diverge remote-bzr: add support to push merges remote-bzr: always try to update the worktree remote-bzr: fix order of locking in CustomTree remote-bzr: delay blob fetching until the very end remote-bzr: cleanup CustomTree
2013-05-06remote-bzr: avoid bad refsLibravatar Felipe Contreras1-15/+23
Versions of fast-export before v1.8.2 throws a bad 'reset' commands because of a behavior in transport-helper that is not even needed. We should ignore them, otherwise we will treat them as branches and fail. This was fixed in v1.8.2, but some people use this script in older versions of git. Also, check if the ref was a tag, and skip it for now. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-06remote-bzr: convert all unicode keys to strLibravatar Felipe Contreras1-2/+2
Otherwise some versions of bazaar might barf. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-05Merge branch 'fc/push-with-export-reporting-result'Libravatar Junio C Hamano2-0/+15
* fc/push-with-export-reporting-result: transport-helper: improve push messages
2013-05-05transport-helper: improve push messagesLibravatar Felipe Contreras2-0/+15
If there's already a remote-helper tracking ref, we can fetch the SHA-1 to report proper push messages (as opposed to always reporting [new branch]). The remote-helper currently can specify the old SHA-1 to avoid this problem, but there's no point in forcing all remote-helpers to be aware of git commit ids; they should be able to be agnostic of them. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-03Git 1.8.3-rc1Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-03Merge branch 'tr/unpack-entry-use-after-free-fix'Libravatar Junio C Hamano1-1/+0
* tr/unpack-entry-use-after-free-fix: unpack_entry: avoid freeing objects in base cache
2013-05-03Sync with maintLibravatar Junio C Hamano2-3/+3
* maint: completion: zsh: don't override suffix on _detault Documentation/git-commit: Typo under --edit
2013-05-03Merge branch 'tr/remote-tighten-commandline-parsing' into maintLibravatar Junio C Hamano3-3/+25
* tr/remote-tighten-commandline-parsing: remote: 'show' and 'prune' can take more than one remote remote: check for superfluous arguments in 'git remote add' remote: add a test for extra arguments, according to docs
2013-05-03Merge branch 'jn/glossary-revision' into maintLibravatar Junio C Hamano1-3/+1
* jn/glossary-revision: glossary: a revision is just a commit
2013-05-03completion: zsh: don't override suffix on _detaultLibravatar Felipe Contreras1-1/+1
zsh is smart enough to add the right suffix while completing, there's no point in trying to do the same as bash. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-02Documentation/git-commit: Typo under --editLibravatar Anders Granskogen Bjørnstad1-2/+2
-C takes a commit object, not a file. Signed-off-by: Anders Granskogen Bjørnstad <andersgb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-01Update draft release notes to 1.8.3Libravatar Junio C Hamano1-3/+16
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-01Fix grammar in the 1.8.3 release notes.Libravatar Marc Branchaud1-78/+77
Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-05-01Merge branch 'hb/git-pm-tempfile'Libravatar Junio C Hamano1-1/+1
* hb/git-pm-tempfile: Git.pm: call tempfile from File::Temp as a regular function
2013-05-01Merge branch 'rs/pp-user-info-without-extra-allocation'Libravatar Junio C Hamano1-35/+14
* rs/pp-user-info-without-extra-allocation: pretty: remove intermediate strbufs from pp_user_info() pretty: simplify output line length calculation in pp_user_info() pretty: simplify input line length calculation in pp_user_info()
2013-05-01Merge branch 'tr/remote-tighten-commandline-parsing'Libravatar Junio C Hamano3-3/+25
* tr/remote-tighten-commandline-parsing: remote: 'show' and 'prune' can take more than one remote remote: check for superfluous arguments in 'git remote add' remote: add a test for extra arguments, according to docs
2013-05-01Merge branch 'zk/prompt-rebase-step'Libravatar Junio C Hamano3-9/+31
* zk/prompt-rebase-step: bash-prompt.sh: show where rebase is at when stopped
2013-05-01Merge remote-tracking branch 'vi-vnwildman/master'Libravatar Jiang Xin1-543/+747
* vi-vnwildman/master: l10n: Update Vietnamese translation (2080t0f0u)
2013-05-01l10n: Update Vietnamese translation (2080t0f0u)Libravatar Tran Ngoc Quan1-543/+747
Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
2013-04-30remote-bzr: access branches only when neededLibravatar Felipe Contreras1-12/+16
Bazaar doesn't seem to be tested for multiple usage of branches, so resources seem to be leaked all over. Let's try to minimize this by accessing the Branch objects only when needed. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: delay peer branch usageLibravatar Felipe Contreras1-3/+3
So it doesn't time out. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: iterate revisions properlyLibravatar Felipe Contreras1-2/+3
This way we don't need to store the list of all the revisions, which doesn't seem to be very memory efficient with bazaar's design, for whatever reason. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: improve progress reportingLibravatar Felipe Contreras1-7/+13
No need to manually count the revisions, and also, this would help to iterate more properly. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: add option to specify branchesLibravatar Felipe Contreras1-2/+18
We might not want all the branches. And branch handling in bazaar is rather tricky, so it's safer to simply specify them. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: add custom method to find branchesLibravatar Felipe Contreras1-5/+20
The official method is incredibly inefficient and slow. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: improve author sanitazionLibravatar Felipe Contreras1-2/+13
So that we don't end up with '<None>', and also synchronize it with the one from remote-hg. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: add support for shared repoLibravatar Felipe Contreras1-7/+15
This way all the remotes share the same data, so adding multiple remotes, or renaming them doesn't create extra overhead. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: fix branch namesLibravatar Felipe Contreras1-0/+1
When branches have '/' in their name (aka. sub-branches), bazaar seems to choke while creating the new directory. Also, git cannot have both 'foo' and 'foo/bar'. So let's replace slashes with a plus sign. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: add support for bzr reposLibravatar Felipe Contreras2-56/+138
In bazaar, a repository can contain multiple branches, and previously we were supporting only one branch at a time. Now we fetch them all. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: use branch variable when appropriateLibravatar Felipe Contreras1-17/+18
There should be no functional changes. Basically we want to reserve the 'repo' variable. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: fix partially pushed mergeLibravatar Felipe Contreras1-4/+13
If part of the merge was already pushed, we don't have the blob_marks available, however, the commits are already stored in bazaar, so we can use the revision_tree to fetch the contents. We want to do this only when there's no other option. There's no easy way to test this. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: fixes for branch divergeLibravatar Felipe Contreras1-1/+7
If the branches diverge we want to reset the pointer to where the remote actually is. Since we can access remote branches just as easily as local ones, let's do so. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: add support to push mergesLibravatar Felipe Contreras2-8/+57
In order to do that, we need to store the marks of every file, so that they can be fetched when needed. Unfortunately we can't tell bazaar that nothing changed, we need to send the data so that it can figure it out by itself. And since it will be requesting a bunch of information by the file_id, it's better to have a helper dict (rev_files), so that we can fetch it quickly. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: always try to update the worktreeLibravatar Felipe Contreras1-1/+5
And fail properly when we can't. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: fix order of locking in CustomTreeLibravatar Felipe Contreras1-1/+1
It doesn't seem to make any difference, but revision_tree() requires a lock. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: delay blob fetching until the very endLibravatar Felipe Contreras1-3/+5
Might be more efficient, but the real reason to use the marks will be revealed in upcoming patches. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30remote-bzr: cleanup CustomTreeLibravatar Felipe Contreras1-7/+1
This code was not used at all. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2013-04-30unpack_entry: avoid freeing objects in base cacheLibravatar Thomas Rast1-1/+0
In the !delta_data error path of unpack_entry(), we run free(base). This became a window for use-after-free() in abe601b (sha1_file: remove recursion in unpack_entry, 2013-03-27), as follows: Before abe601b, we got the 'base' from cache_or_unpack_entry(..., 0); keep_cache=0 tells it to also remove that entry. So the 'base' is at this point not cached, and freeing it in the error path is the right thing. After abe601b, the structure changed: we use a three-phase approach where phase 1 finds the innermost base or a base that is already in the cache. In phase 3 we therefore know that all bases we unpack are not part of the delta cache yet. (Observe that we pop from the cache in phase 1, so this is also true for the very first base.) So we make no further attempts to look up the bases in the cache, and just call add_delta_base_cache() on every base object we have assembled. But the !delta_data error path remained unchanged, and now calls free() on a base that has already been entered in the cache. This means that there is a use-after-free if we later use the same base again. So remove that free(); we are still going to use that data. Reported-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>