| From | Subject | Date |
|---|---|---|
| Samuel Bronson | [PATCH 1/3] Documentation/Makefile: add a commented-out ...
Signed-off-by: Samuel Bronson <naesten@gmail.com>
---
Documentation/Makefile | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 7a8037f..f5d670e 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -106,6 +106,7 @@ endif
SHELL_PATH ?= $(SHELL)
# Shell quote;
SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
+# unconfuse Emacs: '
#
# Please note that there is a minor bug in asciidoc.
-- ...
| May 25, 3:07 pm 2009 |
| Samuel Bronson | [PATCH 3/3] Makefile: add commented out 's for Emacs here, too
Signed-off-by: Samuel Bronson <naesten@gmail.com>
---
Makefile | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/Makefile b/Makefile
index 07a141d..b485c21 100644
--- a/Makefile
+++ b/Makefile
@@ -1190,6 +1190,13 @@ prefix_SQ = $(subst ','\'',$(prefix))
SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH))
+# unconfuse Emacs: '
+
+# The above comment is in case there ...
| May 25, 3:07 pm 2009 |
| Samuel Bronson | [PATCH 2/3] Makefile: Add "make help" telling users to r ...
Without this, "make help" first builds "help.o", then tries to link it to
make a "help" executable, which might take a while to fail in a clean tree.
Signed-off-by: Samuel Bronson <naesten@gmail.com>
---
Makefile | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/Makefile b/Makefile
index eaae45d..07a141d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,12 @@
# The default target of this Makefile is...
all::
+.PHONY: help
+help:
+ @echo ...
| May 25, 3:07 pm 2009 |
| Jeff Brown | tracking committer vs. author
I have noticed that when we pull changes from non-committers into our
repo, sometimes meta information about who committed the change to the
repo is included along side info about who actually wrote the changes.
For example, see
http://github.com/grails/grails/commit/8ac450c37d16b0468ba0f92d3008968fd6a41a75
and note that graemerocher has commit privileges to the repo but
ihotary does not. ihatory's commit was pulled in by graemerocher.
The commit at ...
| May 25, 2:20 pm 2009 |
| Jeff Brown | Re: tracking committer vs. author
On Mon, May 25, 2009 at 6:28 PM, Julian Phillips
I understand all of that but now I am not sure what the best procedure
is. This is what I have been doing.
- create an integration branch
- pull changes from someones repo into my integration branch
- do whatever testing/reviewing/etc. necessary and if I want their
changes, continue...
- merge integration branch (which contains their changes) into my
master branch (test etc...)
- push my master to my origin
I expect there is a simple way ...
| May 25, 4:40 pm 2009 |
| Julian Phillips | Re: tracking committer vs. author
You say "pulled" for both commits, but do you mean that in an exact git
sense (i.e. 'git pull ...' command was used)? I assume not ...
If you pull from someone, then you get their commits, so they are the
committer - on the other hand if you apply patches they have sent, then
you become committer (though they remain the author of course) as you
create new commits (containing basically the same changes and message).
If you compare the git repository ...
| May 25, 4:28 pm 2009 |
| Thomas Spura | [PATCH] speed: reuse char instead of recreation in loop
Move a char and a char * outside of a for loop for speed improvements
Signed-off-by: Thomas Spura <tomspur@fedoraproject.org>
---
Comments?
transport.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/transport.c b/transport.c
index 17891d5..e350937 100644
--- a/transport.c
+++ b/transport.c
@@ -263,11 +263,10 @@ static int write_refs_to_temp_dir(struct strbuf
*temp_dir,
int refspec_nr, const char **refspec)
{
int i;
+ unsigned char ...
| May 25, 12:44 pm 2009 |
| Thomas Spura | Re: [PATCH] speed: reuse char instead of recreation in loop
With ints, the loop costs about 40% of speed. Without recreation, it
Hmm, I don't see it atm. Where do you mean?
--
| May 25, 1:40 pm 2009 |
| Thomas Spura | Re: [PATCH] speed: reuse char instead of recreation in loop
Thanks, sorry for the noise...
Thomas
--
| May 25, 1:44 pm 2009 |
| =?iso-8859-1?Q?Bj=F6 ... | Re: [PATCH] speed: reuse char instead of recreation in loop
And this now leaks memory.
Björn
--
| May 25, 1:16 pm 2009 |
| =?UTF-8?B?UmVuw6kgU2 ... | Re: [PATCH] speed: reuse char instead of recreation in loop
It's a good idea to include actual timings, to give the reader a better
Please turn off automatic line wrapping in your email program when
I wouldn't expect this to significantly change the object code.
Declaring variables in as narrow a scope as possible often helps to make
the code more readable, though. write_refs_to_temp_dir() is short
This introduces a memory leak. The string pointed to by ref is
allocated by dwim_ref() and needs to be free()'d after use, and -- more
importantly -- ...
| May 25, 1:39 pm 2009 |
| Daniel Barkalow | Re: [PATCH] speed: reuse char instead of recreation in loop
Actually, having the variables go out of scope should be at least as fast.
The compiler doesn't actually do anything to make the old variable
inaccessible and get a new variable; with the variable uninitialized, it's
legitimate for the compiler to simply reuse the same storage for all
iterations. Futhermore, with the variables declared inside the loop, the
compiler is allowed to make optimizations that would fail to preserve
those variables between iterations. There are probably no such ...
| May 25, 3:08 pm 2009 |
| Sverre Rabbelier | Re: [PATCH 0/2] git-am foreign patch support
Heya,
On Mon, May 25, 2009 at 21:14, Giuseppe Bilotta
Sweet! I now have a vested interest to see this accepted :P.
--
Cheers,
Sverre Rabbelier
--
| May 25, 12:19 pm 2009 |
| Giuseppe Bilotta | Re: [PATCH 0/2] git-am foreign patch support
Keep in mind that presently it just detects them, it doesn't actually
import them. But their conversion to mbox format seems rather
straightforward, so it can be added easily.
--
Giuseppe "Oblomov" Bilotta
--
| May 25, 12:24 pm 2009 |
| Giuseppe Bilotta | [PATCH 0/2] git-am foreign patch support
This small patchset introduces a framework to allow git-am to support
patchsets not in mailbox format.
The first patch introduces a new patch_format variable that holds the
(autodetected) patch format. All patches are assumed to be in the same
format. Autodetection for Mercurial and StGIT patches is also
implemented, including series index expansion for StGIT.
The second patch introduces actual support for StGIT patches by using
some awk code to convert them to mailbox format.
Giuseppe ...
| May 25, 12:14 pm 2009 |
| Giuseppe Bilotta | [PATCH 1/2] git-am foreign patch support: format autodetection
This patch is the first step towards the introduction of a framework to
allow git-am to import patches not in mailbox format.
Currently detected formats are
* the mailbox format itself, which is assumed by default if input is
form stdin
* Mercurial's output from 'hg export'
* Stacked Git's output from 'stg export' with the default export
template; StGIT patch series are also detected and expanded.
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
---
git-am.sh | ...
| May 25, 12:14 pm 2009 |
| Junio C Hamano | Re: [PATCH 1/2] git-am foreign patch support: format aut ...
I personally do not trust "autodetection" (especially done by others ;-),
# have parseopt to set explicit patch_format before this part...
if test -z "$patch_format" && {
test $# = 0 || test "x$1" = x-
}
then
patch_format=mbox
else
patch_format=$(guess_patch_format)
fi
Having this extra logic inside the main codeflow makes it extremely harder
Can the "series-index-name" file begin with '-' (which would affect the
way how 'set "@"' ...
| May 25, 3:23 pm 2009 |
| Giuseppe Bilotta | Re: [PATCH 1/2] git-am foreign patch support: format aut ...
It's not in two places. The first part sets the patch format only if
we are either reading from stdin or have been passed a stgit patch
series. Otherwise, we still don't know what we're getting, so now we
inspect the first patch to see what format it's in. (Consider for
example the case of appication of a StGIT patch which is not part of a
No, I put that in the second patch, because it was a different thing
(patch processing as opposed to format detection).
--
Giuseppe "Oblomov" ...
| May 25, 3:49 pm 2009 |
| Giuseppe Bilotta | [PATCH 2/2] git-am foreign patch support: StGIT
Convert StGIT patches to mbox format so that they can be imported.
Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
---
git-am.sh | 32 ++++++++++++++++++++++++++++++++
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/git-am.sh b/git-am.sh
index 3508b7e..5199354 100755
--- a/git-am.sh
+++ b/git-am.sh
@@ -375,6 +375,38 @@ else
exit 1
}
;;
+ stgit)
+ this=0
+ for stgit in "$@"
+ do
+ this=`expr "$this" + 1`
+ msgnum=`printf "%0${prec}d" ...
| May 25, 12:14 pm 2009 |
| Benjamin Kramer | [PATCH] imap-send: add support for IPv6
Add IPv6 support by implementing name resolution with the
protocol agnostic getaddrinfo(3) API. The old gethostbyname(3)
code is still available when git is compiled with NO_IPV6.
Signed-off-by: Benjamin Kramer <benny.kra@googlemail.com>
---
imap-send.c | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 51 insertions(+), 3 deletions(-)
diff --git a/imap-send.c b/imap-send.c
index 8154cb2..861268a 100644
--- a/imap-send.c
+++ b/imap-send.c
@@ -982,9 +982,7 @@ ...
| May 25, 12:13 pm 2009 |
| Clemens Buchacher | Re: Segfault in "git remote show <remote-name>"
Subject: [PATCH] fix segfault showing an empty remote
In case of an empty list, the search for its tail caused a
NULL-pointer dereference.
Reported-by: Erik Faye-Lund <kusmabite@googlemail.com>
Signed-off-by: Clemens Buchacher <drizzd@aon.at>
---
This should fix it.
I simply copied this from other uses of match_refs. I wonder if this calls
for a find_link_ref_tail() function, but I didn't know where to put it.
Clemens
builtin-remote.c | 8 ++++----
t/t5505-remote.sh | 10 ...
| May 25, 12:01 pm 2009 |
| Erik Faye-Lund | Segfault in "git remote show <remote-name>"
I've been messing around a bit, trying to set up a gitosis repo to
mirror one of my projects. Now, I added the remote to my project, but
when running "git remote show <remote-name>", I'm getting a segfault
in builtin-remote.c at line 303 ("while (ref->next)"), because ref
itself is NULL. The offending function itself (get_push_ref_states) is
called with NULL as the remote_refs parameters, leading to a
NULL-pointer dereferencing.
Here's the backtrace from the crash:
(gdb) bt
#0 ...
| May 25, 9:10 am 2009 |
| Michael J Gruber | [PATCH] merge-options.txt: Clarify merge --squash
With the --squash option, merge sets up the index just like for a real
merge, but without the merge info (stages). Say so.
Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
---
I think this kind of fell under the rug back then when it was discussed
(http://permalink.gmane.org/gmane.comp.version-control.git/119185).
So I'm resending it.
Cheers,
Michael
Documentation/merge-options.txt | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git ...
| May 25, 9:00 am 2009 |
| Junio C Hamano | May 25, 3:23 pm 2009 | |
| Aidan Van Dyk | Re: partial checkouts
If all you're looking for is a "single set of read-only docs" conglomeration of
all the KDE submodules projects documentation so you can translate them, what
about using "archive"? Since archive takes a "tree-ish", and work on remote
upload-pack servers (if it's enabled), you can get an un-versioned "remote
partial checkout" with something like do things like:
git archive --format=tar --prefix=git/Documentation/ --remote=git://repo.or.cz/git.git HEAD:Documentation | tar tf - | head
git archive ...
| May 25, 7:51 am 2009 |
| Michele Ballabio | [PATCH] gitk: update Italian translation
Patch attached.
| May 25, 6:13 am 2009 |
| Junio C Hamano | May 25, 3:23 pm 2009 | |
| Johannes Sixt | [PATCH jc/maint-add-p-coalesce-fix] t3701: ensure correc ...
From: Johannes Sixt <j6t@kdbg.org>
There are two tests that are skipped if file modes are not obeyed by the
file system. In this case, the subsequent test failed because the
repository was in an unexpected state. This corrects it.
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
---
t/t3701-add-interactive.sh | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/t/t3701-add-interactive.sh b/t/t3701-add-interactive.sh
index 5cdb83d..fd2a55a 100755
--- ...
| May 25, 5:07 am 2009 |
| Jeff King | Re: [RFC PATCH] am: do not do any reset on --abort
I don't know. I had assumed a safety valve we put in git-am might need
to be matched in rebase. But I don't recall whether I have screwed
myself in the same way with rebase. Perhaps because rebase happens on a
detached HEAD, I tend to notice sooner that something is not right.
-Peff
--
| May 25, 9:02 am 2009 |
| Johannes Sixt | Re: [RFC PATCH] am: do not do any reset on --abort
I wonder why we have this problem (and do something about it) with git-am,
but not with git-rebase. Is it perhaps that the usual case were people
were bitten by the old behavior is:
$ git am mbox
.... stops with conflicts
.... oops, wrong branch
$ git checkout other-branch
$ git am mbox
error: git am is already in progress
$ git am --abort
OUTCH! other-branch was reset!
rebase is not used in this manner, and even though it does reset --hard,
it doesn't hurt ...
| May 25, 5:17 am 2009 |
| Junio C Hamano | Re: [RFC PATCH] am: do not do any reset on --abort
I do not see it as a major downside, but not telling them that they may
--
| May 25, 3:23 pm 2009 |
| Jeff King | [RFC PATCH] am: do not do any reset on --abort
We really have no idea what state the tree is in at this
point, and whether the user might have done useful work on
top of it. So let's err on the side of keeping the user's
data intact.
The downside is that if they do have cruft to get rid of, or
want to pretend as if earlier parts of the series that were
applied did not exist, they must manually "git reset --hard"
now.
Signed-off-by: Jeff King <peff@peff.net>
---
This is a followup to:
...
| May 25, 3:43 am 2009 |
| Jeff King | Re: [RFC PATCH] am: do not do any reset on --abort
No, that would defeat the purpose. The problem is that we have no idea
what has happened since the initial "git am". The user may have made
commits they want to keep, and we don't want to reset those away. They
may even have pulled, which means ORIG_HEAD can no longer be trusted for
I think you raise a good point here. If we do decide to stop doing the
reset automatically, it is probably better not to simply stop doing it
(as my patch does), but to downgrade it to a warning ("You probably ...
| May 25, 5:00 am 2009 |
| Avery Pennarun | Re: [RFC PATCH] am: do not do any reset on --abort
If *that's* your problem, then presumably you could avoid it just by
checking whether the right branch corresponds to HEAD before doing a
reset.
Have fun,
Avery
--
| May 25, 8:54 am 2009 |
| Johannes Schindelin | Re: [RFC PATCH] am: do not do any reset on --abort
Hi,
Hmm. I think I would revert that patch after merging git.git right away.
Can you at least check for a dirty tree and reset --hard if it is clean?
In the other case, you could still say "you seem to have modifications,
bla bla bla"...
Ciao,
Dscho
--
| May 25, 4:49 am 2009 |
| Jeff King | Re: [RFC PATCH] am: do not do any reset on --abort
But that only covers one problem. How about you forgot that you had a
failed am in progress, waited hours or days, made some commits on the
same branch, tried to am a series, got the "in progress" message and
then did an "--abort"?
And yes, I have done that.
In both examples, an alternative method for dealing with this is to try
to alert the user that we are in the middle of an am when doing
potentially suspicious things (like switching branches or making commits
outside of "git am ...
| May 25, 9:00 am 2009 |
| Avery Pennarun | Re: [RFC PATCH] am: do not do any reset on --abort
Ah, maybe that's the difference. rebase seems to detach the HEAD,
then do a bunch of stuff, then reset the original branch only when
it's done. So aborting doesn't reset any branches at all, it just
checks out the original branch.
Thus one option would be to try to make am more like rebase: detach
the HEAD before it starts, and reattach it only on success. At least
then you only have one set of UI problems to fix.
(Of course, I've gotten myself into trouble anyway by checking new
stuff ...
| May 25, 9:10 am 2009 |
| David Aguilar | Re: [PATCH] diff: generate prettier filenames when using ...
Lured by a mac. I came home and I tried it on linux:
path.c:157: warning: implicit declaration of function
‘mkstemps’
Gah.
Darn you OS X and your non-portable 4.4 BSD extensions.
Sorry about that.
The original patch could do without the strbuf_detach
and free(), too. Being tricked by an OS X manpage like
that is quite unpleasant.
mkstemp() won't do since it doesn't work with suffixes
(the templates must end with "XXXX"). I'm sure there has to
be another way, but I just can't ...
| May 25, 3:36 am 2009 |
| Jeff King | [PATCH] fix cat-file usage message and documentation
cat-file with an object on the command line requires an
option to tell it what to output (type, size, pretty-print,
etc). However, the square brackets in the usage imply that
those options are not required. This patch switches them to
parentheses to indicate "required but grouped-OR" (curly
braces might also work, but this follows the convention used
already by "git stash").
While we're at it, let's change the <sha1> specifier in the
usage to <object>. That's what the documentation uses, ...
| May 25, 3:33 am 2009 |
| Junio C Hamano | Re: [PATCH RFC] Convert ce_path_match() use to match_pat ...
ce_path_match() is not just about diffs; there may be places that do not
expect pathspecs to match cruft with globs. Have you checked all the
callsites and they are Ok with globbing?
I think using glob in diff-files should be Ok, but that would make it
inconsistent with diff-tree (and possibly diff-index but I didn't check).
The correct operation of diff-tree (and path pruning in "git log" family)
heavily relies on an early-exit optimization not to recurse into a
directory when we can detect ...
| May 25, 3:14 pm 2009 |
| =?utf-8?q?Nguy=E1=BB ... | [PATCH RFC] Convert ce_path_match() use to match_pathspec()
Back in history, ce_path_match() was first introduced in commit
fdee7d07ba6c79b3e5125e96adbe1d9c3e75ce1d, in diff-cache.c. It seems
to be used to handle pathspec that we have today. But it did not
support wildcards.
About one year later, match_pathspec() was introduced as match() in
commit 0d78153952e70c21e94dc6b7eefcb2ac5337a902, builtin-add.c. This
version supported wildcards.
For some reasons diff code did not get converted to use
match_pathspec(). So diff commands do not understand ...
| May 25, 1:42 am 2009 |
| Junio C Hamano | Re: Araxis in mergetool, was Re: What's cooking in git.g ...
I do not think Windows and/or MacOSX were open-source tools ;-)
--
| May 25, 3:23 pm 2009 |
| Wincent Colaiuta | Re: Araxis in mergetool, was Re: What's cooking in git.g ...
No, to my knowledge Apple FileMerge isn't open source either and it's
supported.
Cheers,
Wincent
--
| May 25, 2:31 am 2009 |
| Michael Wookey | Re: Araxis in mergetool, was Re: What's cooking in git.g ...
The mergetool support appears to work well using Araxis Merge on Mac OSX.
--
| May 25, 3:05 am 2009 |
| Johannes Schindelin | Araxis in mergetool, was Re: What's cooking in git.git ( ...
Hi,
Well, I think it is the first closed-source tool that we support, and I
would feel less unhappy if somebody reported back that she tested it and
it works fine.
For the future, it might be better if mergetool could be configured using
/etc/gitconfig to call the merge helper properly. Then we would not need
to clutter git.git with properietary stuff, but could just have the
Windows-specific handling in Git for Windows.
Ciao,
Dscho
--
| May 25, 1:54 am 2009 |
| Junio C Hamano | What's cooking in git.git (May 2009, #03; Mon, 25)
Here are the topics that have been cooking. Commits prefixed with '-' are
only in 'pu' while commits prefixed with '+' are in 'next'. The ones
marked with '.' do not appear in any of the branches, but I am still
holding onto them.
The topics list the commits in reverse chronological order. The topics
meant to be merged to the maintenance series have "maint-" in their names.
----------------------------------------------------------------
[New Topics]
* sb/opt-filename (Sat May 23 ...
| May 25, 1:33 am 2009 |
| David Aguilar | Re: Araxis in mergetool, was Re: What's cooking in git.g ...
I have the same reservations.
When I first picked up mergetool it supported ecmerge.
ecmerge is also closed which is why I reasoned that it was ok
to try and win over Windows users.
It should be possible to configure it today using
/etc/gitconfig, so we might be best served going down the
add-an-entry-to-the-git-wiki route next time; provided
Windows paths and shell-quoting doesn't drive us mad when
writing it, of course ;)
--
David
--
| May 25, 2:50 am 2009 |
| Avery Pennarun | Re: git subtree as a solution to partial cloning?
Well, the problem here is with the definition of "concrete file." If
you're using git filter-branch --index-filter (which is much faster
than --tree-filter), then your trees won't be checked out at all. And
thus there is the open question of exactly what list of files you want
to use. It's unlikely that any existing tool will do it exactly the
way you want (although I could be wrong).
In any case, what you'd probably do is something like git ls-files
--cached | perlscript, where your ...
| May 25, 12:18 pm 2009 |
| Avery Pennarun | Re: git subtree as a solution to partial cloning?
Your only option may be to use git filter-branch then. It lets you do
pretty much anything you want, although merging it back together again
could be entertaining. (Making it correctly mergeable is by far the
git subtree manipulates only commit objects (and a reference to the
single tree object representing the subtree in each commit) so it's
very fast and doesn't depend on file sizes or number of files.
Basically git subtree split is O(n) in the number of *commits* since
the most recent ...
| May 25, 8:50 am 2009 |
| Avery Pennarun | Re: git subtree as a solution to partial cloning?
Currently only at the directory level. In theory, there's nothing
stopping us from working with any subset of files... but it's really
much simpler this way (both to code and to explain) so I'd much rather
leave it as is. Can you reorganize your tree so that you divide the
'git subtree split' generates a new commit history on top of the *most
recently merged* commit from the subproject. To merge back into the
subproject, you would take that newly-generated commit and do the
usual "git ...
| May 25, 12:59 am 2009 |
| Jakub Narebski | Re: git subtree as a solution to partial cloning?
I think you would want to use git-ls-files, using --exclude-from=<file>
option, and perhaps also -i/--ignored to create list of files to be
What git-filter-branch does is to write _new_ history, and move old
history to refs/original/* namespace (that might have changed; anyway
the old history should be available via reflog). The visible efect
Yes, it would... well, you have to take into account that ordinary
clone over local filesystem does hardlinking of packfiles, and you
need to use ...
| May 25, 4:26 pm 2009 |
| Asger Ottar Alstrup | Re: git subtree as a solution to partial cloning?
OK, so git subtree is not usable as it is for this. Instead, it seems
a new system has to be developed which would be similar to git subtree
in spirit, except that it worked at a file-level. Of course, the git
merge subtree strategy can not be used, so merging has to be done
differently.
So a poor mans system could work like this:
- A reduced repository is defined by a list of paths in a file, I
guess with a format similar to .gitignore
- To extract: A copy of the original repository is ...
| May 25, 10:35 am 2009 |
| Asger Ottar Alstrup | Re: git subtree as a solution to partial cloning?
Since the .gitignore format supports !, I believe that should not make
Yes, sure, and that is why I asked whether there is some tool in git
that can give a list of concrete files surviving a .gitignore list of
Thanks. OK, I see now that filter-branch will not destroy the original
repository. That is not at all obvious from reading the man page, when
the very first sentence says that it will rewrite history. But the
main point of this exercise is to reduce the size of the reduced
repository ...
| May 25, 11:28 am 2009 |
| Asger Ottar Alstrup | Re: git subtree as a solution to partial cloning?
No, that is unfortunately not so easy. If we could, I suppose we could
use submodules instead.
Are the subtree split and merge operations effective? I.e. how do they
scale with the size of the original and reduced repositories? I.e. is
it feasible to use hooks to automate the splitting and merging
whenever there are changes in the original or reduced repositories?
Regards,
Asger
--
| May 25, 2:33 am 2009 |
| Avery Pennarun | Re: git subtree as a solution to partial cloning?
Are you sure you want to define the list with exclusions instead of
inclusions? I don't really know your use case.
Anyway, if you're using git filter-branch, it'll be up to you to fix
the index to contain the list of files you want. (See man
You probably need to read about the differences between git trees,
blobs, and commits. You're not actually "copying" anything; you're
just creating some new directory structures that contain the
*existing* blobs. And of course the existing blobs ...
| May 25, 10:54 am 2009 |
| Asger Ottar Alstrup | git subtree as a solution to partial cloning?
I am considering different ways to get git to handle repositories with
very big files in a setup where partial clone is required, and it
seems git subtree might be a part of the solution.
Does git subtree support splitting at the file level, or only at
directory level? Also, how are conflicts handled when you subtree
merge changes back to the master? For this to work in practice, I
suppose the users of the split repositories should see the conflicts
and fix them themselves. Can the reduced ...
| May 25, 12:35 am 2009 |
| Johannes Schindelin | Re: [PATCH 2/2] Change xdl_merge to generate output even ...
Hi,
Maybe mention here that it just so happens that when there were no changes
in base->local, it does not matter what changes (_if any_) were made to
base->remote, we should output the remote version.
Took me more than 2 seconds to find that out, so let's spare the
occasional reader this time (2 seconds is my attention span).
Your fix is correct.
Ciao,
Dscho
--
| May 25, 12:51 am 2009 |
| Johannes Schindelin | Re: [PATCH 1/2] merge-file fails to output anything for ...
Hi,
Your patch is good, but I'd like to have it mention in the commit subject
that this is not a fix, but a patch to the test suite. A prefix "t6023:"
would suffice, methinks.
Thanks,
Dscho
--
| May 25, 12:52 am 2009 |
| Charles Bailey | Slightly obscure merge-file inconsistency
This was spotted by someone on stackoverflow.com.
It seems that git merge-file will wipe the merged file in the
degenerate case when all the inputs have identical contents. As
far as I can tell this is a bug, albeit one which will never be
triggered in practice because merge-file won't ever be called on
files that are identical in base, local and remote versions.
I think that the problem is just an overzealous null check in
xdl_merge. Certainly with the fix, the test suite still passes ...
| May 24, 5:21 pm 2009 |
| Charles Bailey | [PATCH 1/2] merge-file fails to output anything for a de ...
In the case that merge-file is passed three files with identical
contents it wipes the contents of the output file instead of
leaving it unchanged.
Althought merge-file is porcelain and this will never happen in
normal usage, it is still wrong.
Signed-off-by: Charles Bailey <charles@hashpling.org>
---
t/t6023-merge-file.sh | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/t/t6023-merge-file.sh b/t/t6023-merge-file.sh
index f8942bc..44141af 100755
--- ...
| May 24, 5:21 pm 2009 |
| Charles Bailey | [PATCH 2/2] Change xdl_merge to generate output even for ...
xdl_merge used to have a check to ensure that there was at least
some change in one or other side being merged but this suppressed
output for the degenerate case when base, local and remote
contents were all identical.
Removing this check enables correct output in the degenerate case
and xdl_free_script handles freeing NULL scripts so there is no
need to have the check for these calls.
Signed-off-by: Charles Bailey <charles@hashpling.org>
---
xdiff/xmerge.c | 32 ...
| May 24, 5:21 pm 2009 |
| Jan Engelhardt | Re: Git produces Unidiff - Does it really?
Here is a random patch; not that I am fond of it, but it
speaks in code at least.
Tear it apar! :)
parent 9619ff14159ab3401636b9883a715b0f20b051df (v1.6.3.1-152-g9619ff1)
commit 9d73395d1c08d2fc4e1b740c2d37d8daed7cb3e6
Author: Jan Engelhardt <jengelh@medozas.de>
Date: Mon May 25 11:40:34 2009 +0200
diff: produce TSVN-acceptable diff
Once TortoiseSVNMerge sees a \t after the filename in a --- line,
it accepts a patch. (Not that t
So let's produce patches with said \t, and a $ so ...
| May 25, 2:48 am 2009 |
| Junio C Hamano | Re: Git produces Unidiff - Does it really?
We have "index ..." and other metainformation (most noticeable when
renames and mode changes are involved) before any hunk begins. POSIX
unified context format of course would not know about them either.
In the context of git, file modification time often does not have a
defined meaning. If you are comparing two arbitrary tree objects (or two
arbitrary blob objects), there is no concept of "timestamp of the preimage
and the postimage". If you are comparing two commits, you _could_ show
the ...
| May 24, 8:27 pm 2009 |
| Matthieu Moy | Re: hg2git error
... or to import the commits of this unnamed head, without setting a
Git reference to it (with a message on the console saying stg like
"Unnamed head imported as commit %s\n" to let the user do something
Stg like refs/hg-heads/<branch>/<number> ? (seems to be accepted in
the Git namespace)
(my 2 cents)
--
Matthieu
--
| May 25, 4:57 am 2009 |
| Rocco Rutte | Re: hg2git error
Hi,
Both solutions require refactoring and new code that is abled to walk
the DAG mercurial gives us since in both cases we'd need to find the
fork point. I don't know mercurials good enough to say if and how much
its API can help here.
I don't use git any longer and do only fix obvious breakages for
hg-fast-export, read: since this is a new feature I'm afraid I won't
implement it.
Rocco
--
| May 25, 6:22 am 2009 |
| Johannes Schindelin | Re: hg2git error
Hi,
I disagree... The worst solution is to stop working at all. A better
solution would be to ignore the unnamed head, and the best solution would
probably be to generate ref names that are _not_ branch names for such
heads.
Ciao,
Dscho
--
| May 25, 4:43 am 2009 |
| Rocco Rutte | Re: hg2git error
Hi,
I'm afraid there's nothing you can do except a) wait until somebody with
push access to the repo merges or b) do that yourself. The error means
that on a branch there's more than one head (i.e. childless
revision). There's no equivalent concept in git which is why I don't
know what to do. Generating fake branch names for git may be a little
messy I think.
Rocco
--
| May 25, 4:34 am 2009 |
| Tay Ray Chuan | Re: [PATCH 02/18] http-push, http-walker: style fixes
Hi,
thanks for taking the time to go through this gargantuan series; your
suggestions and comments are really appreciated. I'll fix it soon.
--
Cheers,
Ray Chuan
--
| May 25, 5:03 am 2009 |
| =?iso-8859-1?Q?Bj=F6 ... | Re: git-ls-files --added?
You can use the object name of the empty tree with diff-* in that case,
that's what the pre-commit.sample hook does.
Björn
--
| May 25, 12:46 am 2009 |
| Junio C Hamano | Re: git-ls-files --added?
Having said all that, I think you might be interested in pursuing
http://thread.gmane.org/gmane.comp.version-control.git/97830/focus=99134
Also, the following thread may serve as a food for thought; it shows that
there is real need for some concise, easy to parse output for people who
want their own Porcelain.
http://thread.gmane.org/gmane.comp.version-control.git/106122/focus=108110
In short, ls-files and diff-index _can_ give you what you want, but often
people would want ...
| May 24, 11:33 pm 2009 |
| Constantine Plotnikov | Re: git-ls-files --added?
I'm one of those people :) Writing git support for IDEs is quite
tricky at times, and status check was one of quite unpleasant
experiences.
BTW git-diff won't work in situation when the directory was just
initialized and there were no commit. In that case added file = staged
file and it is possible to use git-ls-files.
Constantine
--
| May 25, 12:31 am 2009 |
| Giuseppe Bilotta | Re: [PATCH 0/2] StGit patch series import
I'd rather have autodetection than command line options, at least as
Hm. It does make sense to have mail conversion at 'mailsplit' time.
The preprocessing would (1) explode any series, if present (2) convert
the patch from whatever format they are in into mbox format (3) put
them in place. (1) is what my git am patch does, so what we need is
essentially (2). For efficiency we could assume that the user does not
pass patches of different formats to us, so we peek at the first patch
and ...
| May 25, 12:19 am 2009 |
| Junio C Hamano | Re: [PATCH 0/2] StGit patch series import
There is no need to introduce any new program, I think.
Nobody is against your teaching the "git am" callchain to accept things
other than Berkeley mbox. "git am" is "import-patches" in that sense
already.
You can add a conditional (perhaps triggered by a "the patches are in this
format" command line option) to "git am" to alter the way it splits the
input into individual pieces of e-mail, named 0001, 0002, 0003, ..., and
leaves the total number of message in $dotest/last.
Currently we ...
| May 24, 11:39 pm 2009 |
| David Aguilar | [PATCH v2] mergetool--lib: add support for araxis merge
Araxis merge is now a built-in diff/merge tool.
This adds araxis to git-completion and updates
the documentation to mention araxis.
Signed-off-by: David Aguilar <davvid@gmail.com>
---
Markus noticed that we forgot to touch "$BACKUP" so this is v2.
Documentation/git-difftool.txt | 2 +-
Documentation/git-mergetool.txt | 2 +-
Documentation/merge-config.txt | 2 +-
contrib/completion/git-completion.bash | 2 +-
git-mergetool--lib.sh | ...
| May 25, 10:23 am 2009 |
| Chani | Re: partial checkouts
I like this idea. I like the idea of git subtree in general. :)
however, we've decided to go the "copy all documentation into svn" route for
now (so that the translators can keep using only svn).
I'll be back when we run into the next svn-external issue (there's sure to be
more). :)
--
This message brought to you by eevil bananas and the number 3.
www.chani3.com
| May 24, 8:07 pm 2009 |
| Nguyen Thai Ngoc Duy | Re: partial checkouts
It was pulled off because of big, intrusive and not well-designed patches.
http://mid.gmane.org/20081128192033.GF23984@spearce.org
I may submit it again when I get code insertions down to ~500 lines or
something like that ;-) Anyway you could always help by giving more
use cases to test against the current design.
--
Duy
--
| May 24, 6:51 pm 2009 |
| Jeff King | Re: [PATCH 1/2] diff: change semantics of "ignore whites ...
We have DIFF_XDL_TST these days; while it is currently equivalent to
what you do here, I thought part of the purpose was to abstract it to
make it simpler to later add master/slave magic.
-Peff
--
| May 25, 4:04 am 2009 |
| Junio C Hamano | Re: [PATCH 1/2] diff: change semantics of "ignore whites ...
Heh, nobody seems to use it though.
Now the part reads
if (DIFF_XDL_TST(options, IGNORE_WHITESPACE) ||
DIFF_XDL_TST(options, IGNORE_WHITESPACE_CHANGE) ||
DIFF_XDL_TST(options, IGNORE_WHITESPACE_AT_EOL))
DIFF_OPT_SET(options, DIFF_FROM_CONTENTS);
else
DIFF_OPT_CLR(options, DIFF_FROM_CONTENTS);
Thanks.
--
| May 25, 11:48 am 2009 |
| Jeff King | Re: [PATCH 0/5] Speeding up "git status" and "git diff - ...
I just read through the series, and it looks sane to me. My only concern
would be that we are forgetting some option that needs to disable the
optimization (in the same way that find-copies-harder) does, but I
couldn't think of one. And that is, after all, what cooking it in next
is for. :)
But I am not terribly familiar with the cache-trees corner of the code,
so take my endorsement with a grain of salt.
There is a minor typo in the subject of 2/5.
-Peff
--
| May 25, 3:59 am 2009 |
| Jeff King | Re: [PATCH 2/2] t8005: convert CP1251 character set to I ...
Git builds fine on my Solaris 8 test box with this patch. It also builds
fine if I drop OLD_ICONV, so it may be that we can unconditionally do
so (but I don't have any older boxen to test with).
With current 'next' and NO_PERL set, I can pass every test except:
t3900 - still problems in the eucJP test. I haven't looked closely,
but my understanding is that this might need extra language
packs installed (I know virtually nothing about Solaris
administration ...
| May 25, 2:20 am 2009 |
| Jeff King | Re: [PATCH 2/2] t8005: convert CP1251 character set to I ...
Never mind about this one. It is broken with /usr/ucb/touch (because it
uses "-r"), but I usually do my auto-builds with /usr/bin/touch (I just
noticed it because I was testing by hand).
-Peff
--
| May 25, 2:26 am 2009 |
| Heiko Voigt | Re: can anybody explain the following to a git noob?
Note that a second git init does not delete the previous database. So if
you want to start from scratch you need to delete the main .git folder.
As already mentioned a script recreating your setup from public sources
would really be a big help to find out were git does not do what you are
expecting.
cheers Heiko
--
| May 25, 4:10 am 2009 |
| Tim Uckun | Re: can anybody explain the following to a git noob?
OK. I'll give that a shot.
I would still like to know what went wrong with my own sources though.
After all I am going to be using it with my own sources.
--
| May 25, 5:52 am 2009 |
| Jeff King | Re: git merge remote branch says "Merge commit ..."?
So would you be in favor of this patch?
-- >8 --
Subject: [PATCH] merge: indicate remote tracking branches in merge message
Previously when merging directly from a local tracking
branch like:
git merge origin/master
The merge message said:
Merge commit 'origin/master'
* commit 'origin/master':
...
Instead, let's be more explicit about what we are merging:
Merge remote branch 'origin/master'
* origin/master:
...
We accomplish this by ...
| May 25, 2:44 am 2009 |
| Michal Marek | Re: [PATCH] apply: handle filenames with double slashes better
Sorry for the delay, Here's hopefully the final patch:
Collapse double slashes to make patches like this work with --index or
--cached:
git apply --index <<-EOF
--- a/perl//Git.pm
+++ b/perl//Git.pm
@@ -1358,3 +1358,4 @@
1; # Famous last words
+# test
EOF
Signed-off-by: Michal Marek <mmarek@suse.cz>
---
builtin-apply.c | 28 ++++++++++++++++++++++------
1 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/builtin-apply.c b/builtin-apply.c
index ...
| May 25, 2:11 am 2009 |
| Johannes Sixt | Re: [PATCH v0 3/3] Build in git-rebase.sh
OK. Assuming you are using the latest msysgit compiler, which is gcc 4.4,
then you need the SNPRINTF_SIZE_CORR related patch from 4msysgit.git.
-- Hannes
--
| May 24, 11:47 pm 2009 |
| Nguyen Thai Ngoc Duy | Re: [PATCH v0 3/3] Build in git-rebase.sh
It's cross compiler 4.3. Will try the patch.
--
Duy
--
| May 25, 12:00 am 2009 |
| Nguyen Thai Ngoc Duy | Re: [PATCH v0 3/3] Build in git-rebase.sh
It is because of SNPRINTF_SIZE_CORR. Thank you.
--
Duy
--
| May 25, 12:39 am 2009 |
| Johannes Sixt | Re: [PATCH v0 3/3] Build in git-rebase.sh
This doesn't happen for me: neither with Windows's original snprintf nor
with the version from compat/. Are you using the latest msysgit
environment to compile, i.e. gcc 4.4? There was a change regarding
SNPRINTF_SIZE_CORR; perhaps that's the culprit?
I don't undertand what this patch does, anyway. Where is the detail that I
They also pass for me with your earlier fix-up patch, but with or without
--
| May 24, 11:16 pm 2009 |
| Nguyen Thai Ngoc Duy | Re: [PATCH v0 3/3] Build in git-rebase.sh
It could be. I used git.git's next branch, not msys4git or mingw.git
The first vsnprintf() in "onto" case above did not produce " --onto"
as it should have been. I tried to recover by filling "str" with the
Good to know.
--
Duy
--
| May 24, 11:34 pm 2009 |
| Junio C Hamano | May 25, 3:23 pm 2009 | |
| Jeff King | [PATCH] convert bare readlink to strbuf_readlink
This particular readlink call never NUL-terminated its
result, making it a potential source of bugs (though there
is no bug now, as it currently always respects the length
field). Let's just switch it to strbuf_readlink which is
shorter and less error-prone.
Signed-off-by: Jeff King <peff@peff.net>
---
This is a re-post with the missing strbuf_release added.
I am not overly married to this patch, so if you think it is code churn,
please just say so and drop it. I am just clearing out my ...
| May 25, 3:46 am 2009 |
| Johannes Sixt | Re: [PATCH 2/3] commit: add function to unparse a commit ...
I see a recursion here. Could this not overflow the stack if there is a
long ancestry chain?
-- Hannes
--
| May 25, 2:17 am 2009 |
| Johannes Schindelin | Re: [PATCH 2/3] commit: add function to unparse a commit ...
Hi,
You mean tail recursion, i.e. something like
void unparse_commit(struct commit *item)
{
item->object.flags = 0;
item->object.used = 0;
while (item->object.parsed) {
struct commit *first;
item->object.parsed = 0;
if (!item->parents)
break;
if (item->parents->next)
unparse_commit_list(item->parents->next);
first = item->parents->item;
free_commit_list(item->parents);
item->parents = NULL;
item = first;
}
}
However, I am a bit concerned that this ...
| May 25, 2:46 am 2009 |
| Johan Herland | Re: git submodule update --merge
Well, in the scenario I described earlier, the project developers (your
"average users") _do_ have push access to the submodules. And that scenario
For the purposes of this discussion, this is pretty close to the use case I
described earlier in my scenario as well. Thanks, Avery, for presenting the
Yes, and I have never argued that your "average users" should use 'merge'.
Indeed I have not argued that 'merge' is suitable for your workflow _at_
_all_.
One of the guiding principles I ...
| May 25, 3:48 pm 2009 |
| Johan Herland | Re: git submodule update --merge (Was: What's cooking in ...
I haven't received any replies to my attempt to describe the context in
which "git submodule update --merge" is useful. A hint as to whether my
argument is valid, or just crap, would be nice.
In any case, even if we don't include "git submodule update --merge",
could we _please_ consider changing the associated config variable from
submodule.<name>.rebase = true/false (false if unset)
to something like
submodule.<name>.update = checkout/rebase (checkout if unset)
or (Junio's ...
| May 25, 4:59 am 2009 |
| Johannes Schindelin | Re: git submodule update --merge
Hi,
Well, that is probably because you are not forced by me to use submodules.
Because in the project I use submodules most heavily, there is one
recurring theme: you cannot push to the submodules. And by "you" I mean
"a regular user".
So virtually all you do in these submodules cannot be pushed at all. It
has to be submitted to the respective submodule maintainer.
And guess what happens in such a case when you set that tentative "update"
variable to "merge"?
Exactly.
FWIW ...
| May 25, 11:57 am 2009 |
| Junio C Hamano | Re: git submodule update --merge
FWIW, I didn't find "rebase makes sense but merge doesn't" argument very
convincing to begin with. Because the configuration variable is about
from the UI standpoint.
I do not know what the sensible repertoire of options nor what the default
should be, though. That's up to the submodule using people to sort out.
--
| May 25, 11:33 am 2009 |
| Avery Pennarun | Re: git submodule update --merge
On Mon, May 25, 2009 at 2:57 PM, Johannes Schindelin
I have the same problem. Out of curiosity, how do you handle the case
where you really need to make a change to the submodule and let your
team members see that change, even though the submodule's upstream is
slow and/or doesn't accept the patch?
In that situation, we've had to make local shared mirrors of all the
submodules and point .gitmodules at that. But that would be your
"toy" scenario - our local users have push access to the ...
| May 25, 12:04 pm 2009 |
| Johannes Schindelin | Re: git submodule update --merge
Hi,
Happily enough, our changes were accepted so far.
For a few branches, though, the patches are not ready to be sent upstream
(or, from a certain viewpoint, sometimes downstream) yet, so we do have
local forks for those working on that.
Note, however, that even in this case, it is better to use 'rebase' rather
than 'merge', for exactly the same (I almost wrote "unconvincing") reason
as before.
Ciao,
Dscho
P.S.: in some cases, the submodules' "upstreams" are maintained by team ...
| May 25, 12:54 pm 2009 |
| Johan Herland | Re: git submodule update --merge
I suggest the default should be whatever "git submodule update" does today,
which is what I've called 'checkout' above (i.e. it simply checks out the
submodule commit, which naturally detaches the head).
If you prefer, I can split my previous patch in two; one that fixes the
config variable, and one that adds "submodule update --merge", so that they
can be evaluated separately. Hmm?
Have fun! :)
...Johan
--
Johan Herland, <johan@herland.net>
www.herland.net
--
| May 25, 3:10 pm 2009 |
| Peter Hutterer | Re: git submodule update --merge (Was: What's cooking in ...
I can't really chime in on the merge debate since it's not part of my
workflow, but I definitely support the above. Even if we never add any
options other than checkout/rebase, it's still better than the prospect of
having possibly conflicting boolean settings in the future.
Cheers,
Peter
--
| May 25, 4:15 pm 2009 |
| Johannes Sixt | Re: [PATCH RESEND] Git.pm: Always set Repository to abso ...
Unfortunately, this change breaks MinGW git because the absolute path that
this produces is MSYS-style /c/path/to/repo, but git does not understand
this; it should be c:/path/to/repo. This value is ultimately assigned to
GIT_DIR, but the path name mangling that usually happens when an MSYS
program (like perl) spawns a non-MSYS program (like git) does not happen.
Your commit message is quite vague about the problems that you have seen.
I vote to revert this change.
-- Hannes
--
| May 25, 12:33 am 2009 |
| Michael J Gruber | Re: [PATCH v3 0/2] Re: user-manual: general improvements
I am sorry but I don't think you fully comprehend the documentation tool
chain. Asciidoc translates the *.txt according to config files which
come with asciidoc and can be (and are, in our case) modified. It
translates into xml (for man pages) which is semantic markup. Even at
that step, there are more options - the standard asciidoc.conf (asciidoc
8) has:
[quotes]
# Constrained ...
| May 25, 5:41 am 2009 |
| Junio C Hamano | May 25, 3:23 pm 2009 | |
| Jeff King | [PATCH 2/2] fetch: report ref storage DF errors more acc ...
When we fail to store a fetched ref, we recommend that the
user try running "git prune" to remove up any old refs that
have been deleted by the remote, which would clear up any DF
conflicts. However, ref storage might fail for other
reasons (e.g., permissions problems) in which case the
advice is useless and misleading.
This patch detects when there is an actual DF situation and
only issues the advice when one is found.
Signed-off-by: Jeff King <peff@peff.net>
---
This is a followup to ...
| May 25, 3:40 am 2009 |
| Jeff King | [PATCH 1/2] lock_ref: inform callers of unavailable ref
One of the ways that locking might fail is that there is a
DF conflict between two refs (e.g., you want to lock
"foo/bar" but "foo" already exists). In this case, we return
an error, but there is no way for the caller to know the
specific problem.
This patch sets errno to ENOTDIR, which is the most sensible
code. It's what we would see if the refs were stored purely
in the filesystem (but these days we must check the
namespace manually due to packed refs).
Signed-off-by: Jeff King ...
| May 25, 3:37 am 2009 |
| previous day | today | next day |
|---|---|---|
| May 24, 2009 | May 25, 2009 | May 26, 2009 |
