The is_excluded and is_path_excluded APIs are very similar, except for a
few noteworthy differences:
is_excluded doesn't handle ignored directories, results for paths within
ignored directories are incorrect. This is probably based on the premise
that recursive directory scans should stop at
Thomas Rast tr...@inf.ethz.ch writes:
From a cursory glance it looks like it's actually an existing bug in
read_revisions_from_stdin or handle_revision_arg, depending on which way
you look at it. read_revisions_from_stdin passes its temporary buffer
down to handle_revision_arg:
Signed-off-by: Karsten Blees bl...@dcon.de
---
builtin/add.c | 5 +---
builtin/check-ignore.c | 6 +---
builtin/ls-files.c | 15 +++---
dir.c | 79 --
dir.h | 16 ++
unpack-trees.c
Checking if a file is in the index is much faster (hashtable lookup) than
checking if the file is excluded (linear search over exclude patterns).
Skip is_excluded checks for files: move the cache_name_exists check from
treat_file to treat_one_path and return early if the file is tracked.
This
'git-status --ignored' recursively scans directories up to three times:
1. To collect untracked files.
2. To collect ignored files.
3. When collecting ignored files, to check that an untracked directory
that potentially contains ignored files doesn't also contain untracked
files
'git-status --ignored' still scans the work tree twice to collect
untracked and ignored files, respectively.
fill_directory / read_directory already supports collecting untracked and
ignored files in a single directory scan. However, the DIR_COLLECT_IGNORED
flag to enable this has some git-add
Junio C Hamano gits...@pobox.com writes:
Karsten Blees karsten.bl...@gmail.com writes:
This patch series addresses several bugs and performance issues in
.gitignore processing.
A 8-patch series ending at 5d765dc7888b (dir.c: git-status: avoid
is_excluded checks for tracked files,
Thanks for the regular update! This is great work.
One issue with the plural form messages, though:
Am Montag, 15. April 2013, 18:27:40 schrieb Ralf Thielow:
#: bundle.c:186
-#, fuzzy, c-format
+#, c-format
msgid The bundle contains this ref:
msgid_plural The bundle contains these %d
Am 15.04.2013 21:33, schrieb Junio C Hamano:
Junio C Hamano gits...@pobox.com writes:
Karsten Blees karsten.bl...@gmail.com writes:
This patch series addresses several bugs and performance issues in
.gitignore processing.
A 8-patch series ending at 5d765dc7888b (dir.c: git-status: avoid
Mr_and_Mrs_D the.ubik at gmail.com writes:
I am on windows 7 Pro - mingwin
I decided to turn autocrlf to false and use .gitattributes instead and was
bitten by this bug :
http://stackoverflow.com/questions/13531988/git-line-endings-renormalize-
Karsten Blees karsten.bl...@gmail.com writes:
Am 15.04.2013 21:33, schrieb Junio C Hamano:
Junio C Hamano gits...@pobox.com writes:
Karsten Blees karsten.bl...@gmail.com writes:
This patch series addresses several bugs and performance issues in
.gitignore processing.
A 8-patch series
Here are the topics that have been cooking. Commits prefixed with
'-' are only in 'pu' (proposed updates) while commits prefixed with
'+' are in 'next'.
You can find the changes described here in the integration branches
of the repositories listed at
On 13-04-15 02:50 PM, Junio C Hamano wrote:
Marc Branchaud marcn...@xiplink.com writes:
After that clone or init creates a repository, you still have to
add if you want to make it a submodule to the toplevel.
To me it makes more sense to move the .git directory when the user invokes
git
Ilya Basin wrote:
Does this --fast-export thing support what John mentioned, the
incremental import support? Does 'git fast-import' has it?
I need it, because full import takes too long.
The central repo of my employer is CVS, other people commit to it and
I use git internally to be able to
Jeff King p...@peff.net writes:
And by the way, I am actually not sure that such a shared-object setup
is a good idea, but only that _if_ you are going to do it with
submodules, you might as well do it for all repos. In theory, it is not
that hard to have a big per-user object-only repository
Marc Branchaud marcn...@xiplink.com writes:
So it looks like the proposed change to git-clone provides no benefit to the
submodule-adding machinery, which still needs to know when and how to
relocate .git directories.
Ram, assuming Junio's explanations match your intentions, if the whole
Junio C Hamano gits...@pobox.com writes:
Jonathan Nieder jrnie...@gmail.com writes:
If you try this:
1. Install Git for Windows (from the msysgit project)
2. Put
[core]
autocrlf = false
eol = native
in your .gitconfig.
3. Clone a project with
On Mon, Apr 15, 2013 at 11:00 PM, Junio C Hamano gits...@pobox.com wrote:
Junio C Hamano gits...@pobox.com writes:
Jonathan Nieder jrnie...@gmail.com writes:
If you try this:
1. Install Git for Windows (from the msysgit project)
2. Put
[core]
autocrlf = false
Karsten Blees karsten.bl...@gmail.com writes:
is_excluded doesn't handle ignored directories, results for paths within
ignored directories are incorrect. This is probably based on the premise
that recursive directory scans should stop at ignored directories,...
Correct. Long time ago, we
Oj W wrote:
Change a binary file whose filename contains an ampersand, then view
the commitdiff page in gitweb.
Git outputs a message like Binary files a/bw.dll and b/bw.dll differ
Gitweb format_diff_from_to_header() doesn't notice anything in that
output which needs escaping, and writes
Erik Faye-Lund kusmab...@gmail.com writes:
This is absolutely the right thing to do. However, stuff have changed
a bit since the patch was written; this change now needs to go in
config.mak.uname instead of config.mak.
Thanks for a quick response.
What's your preference? I could just ignore
In the current transport-helper code, refs without namespaced refspecs don't
work correctly, so let's always use them.
Some people reported issues with 'git clone --mirror', and this fixes them, as
well as possibly others.
Signed-off-by: Felipe Contreras felipe.contre...@gmail.com
---
Ramkumar Ramachandra artag...@gmail.com writes:
Junio C Hamano wrote:
If rebase -m were to be taught to do this, the natural way to do
so is to
(1) Prepare the todo the usual way
(2) Do those two commits for index and working tree
(3) Append two insns (exec reset HEAD^ and exec reset
On Mon, Apr 15, 2013 at 3:28 PM, Junio C Hamano gits...@pobox.com wrote:
* fc/remote-hg (2013-04-11) 21 commits
- remote-hg: activate graphlog extension for hg_log()
- remote-hg: fix bad file paths
- remote-hg: document location of stored hg repository
- remote-hg: fix bad state issue
If upload-pack fails while generating a pack, the receiving side of a
fetch will print out a message like this:
fatal: git remote host hung up unexpectedly
fatal: recursion detected in die handler
You can see it by instrumenting upload-pack to fail like this:
diff --git a/upload-pack.c
When any git code calls die(), we chain to a custom
die_routine, which we expect to print a message and exit the
program. To avoid infinite loops, we detect a recursive call
to die() with a simple counter, and break out of the loop by
printing a message and exiting ourselves, without chaining
to
When the async subsystem is used, we may spawn off
sub-threads (if the platform supports it), and consider the
original thread to be the main thread of execution. We use
this information in a custom die_routine to decide whether
to call pthread_exit or a regular full-process exit.
Let's pull this
When we have started threads with the async subsystem, both
the thread and the main program may call die(). The async
subsystem sets up a special die routine to call pthread_exit
rather than regular exit, but the recursion check in die()
happens outside of this routine, and does not know that it's
Felipe Contreras felipe.contre...@gmail.com writes:
And about this:
http://mid.gmane.org/1365638832-9000-3-git-send-email-felipe.contre...@gmail.com
What about it? Is that the one you said you are going to reroll?
I do not recall the details of Peff's complaints, but re-reading the
log
On Mon, Apr 15, 2013 at 01:28:53PM -0700, Junio C Hamano wrote:
[Graduated to master]
[...]
* jk/http-error-messages (2013-04-06) 9 commits
(merged to 'next' on 2013-04-11 at 7a03981)
+ http: drop http_error function
+ remote-curl: die directly with http error messages
+ http: re-word
On Mon, Apr 15, 2013 at 6:14 PM, Junio C Hamano gits...@pobox.com wrote:
Felipe Contreras felipe.contre...@gmail.com writes:
And about this:
http://mid.gmane.org/1365638832-9000-3-git-send-email-felipe.contre...@gmail.com
What about it? Is that the one you said you are going to reroll?
At
On Mon, Apr 15, 2013 at 7:08 PM, Jeff King p...@peff.net wrote:
This patch teaches die() to print the original die message
to stderr before reporting the recursion. The custom
die_routine may or may not have put it the message to
s/put it the/emitted/ perhaps?
stderr, but this is the best we
On Mon, Apr 15, 2013 at 07:45:03PM -0400, Eric Sunshine wrote:
On Mon, Apr 15, 2013 at 7:08 PM, Jeff King p...@peff.net wrote:
This patch teaches die() to print the original die message
to stderr before reporting the recursion. The custom
die_routine may or may not have put it the message
On 16 April 2013 01:25, Jeff King p...@peff.net wrote:
On Mon, Apr 15, 2013 at 01:28:53PM -0700, Junio C Hamano wrote:
[Graduated to master]
[...]
* jk/http-error-messages (2013-04-06) 9 commits
(merged to 'next' on 2013-04-11 at 7a03981)
[...]
...the tip of your current master does
On Mon, Apr 15, 2013 at 4:08 PM, Jeff King p...@peff.net wrote:
When any git code calls die(), we chain to a custom
die_routine, which we expect to print a message and exit the
program. To avoid infinite loops, we detect a recursive call
to die() with a simple counter, and break out of the
On Mon, Apr 15, 2013 at 07:25:32PM -0400, Jeff King wrote:
On Mon, Apr 15, 2013 at 01:28:53PM -0700, Junio C Hamano wrote:
* jk/http-error-messages (2013-04-06) 9 commits
[...]
...the tip of your current master does not currently pass the test
suite[1]. I bisected the problem to show
On Mon, Apr 15, 2013 at 05:11:36PM -0700, Brandon Casey wrote:
+static void check_die_recursion(const char *fmt, va_list ap)
+{
+ static int dying;
+
+ if (!dying++)
+ return;
+
+ vreportf(fatal: , fmt, ap);
How do you know it's safe to call
On Tue, Apr 16, 2013 at 01:49:13AM +0200, Øyvind A. Holm wrote:
[1] I know you always test master before pushing it out, but I suspect
you do not run the GIT_TEST_HTTPD tests. The failures are in t5541
and t5551.
Ah, that explains why the test suite passed here, I built a new
Junio C Hamano wrote:
Just rerolling with what _you_ think is an appropriate level of
explanation (either or both in log and in-code) and see what happens
would probably be the best way to proceed, I think, at this
point. Either you hear It still is wrong and too sketchy, Yeah,
thinking
On Mon, Apr 15, 2013 at 06:32:49PM +0200, Matthieu Moy wrote:
- Create an advice.ui (like color.ui) to turn off all advice. I don't
need advice.
I tend to agree with you, but the idea has explicitly been rejected in
the past. The problem with an option like this is that it would also
On Mon, Apr 15, 2013 at 8:30 PM, Jeff King p...@peff.net wrote:
Subject: [PATCH] http: set curl FAILONERROR each time we select a handle
Until commit 6d052d7 (http: add HTTP_KEEP_ERROR option,
2013-04-05), setting curl's FAILONERROR option was a global
setup; we never changed it. However,
Jeff King wrote:
I was also tempted to suggest just dropping the recursion check
altogether. While it is neat to detect such things, it's a should never
happen bug situation, and an infinite loop of printing out the same
message is pretty easy to notice.
On servers it might be useful to
Jeff King wrote:
--- a/run-command.c
+++ b/run-command.c
@@ -603,7 +603,7 @@ static NORETURN void die_async(const char *err, va_list
params)
{
vreportf(fatal: , err, params);
- if (!pthread_equal(main_thread, pthread_self())) {
+ if (!running_main_thread()) {
Ramkumar Ramachandra wrote:
Junio C Hamano wrote:
That changing the meaning of name in the middle, and doing so
will be confusing to the users, is exactly the issue, isn't it?
Yes, but we have to change _something_ if we don't want to hit a WTF
like 'git push master next' pushing master and
Jonathan Nieder wrote:
As you hinted before, this would involve reverting the introduction
of branch.name.pushremote, with the explanation that it was a
mistake inspired by that false symmetry, that you noticed and were
uncomfortable with but the rest of us were blind too.
s/too/to/
For the
On Mon, Apr 15, 2013 at 5:42 PM, Jeff King p...@peff.net wrote:
On Mon, Apr 15, 2013 at 05:11:36PM -0700, Brandon Casey wrote:
+static void check_die_recursion(const char *fmt, va_list ap)
+{
+ static int dying;
+
+ if (!dying++)
+ return;
+
+
Jiang Xin wrote:
--- a/branch.c
+++ b/branch.c
[...]
@@ -79,23 +79,23 @@ void install_branch_config(int flag, const char *local,
const char *origin, cons
if (flag BRANCH_CONFIG_VERBOSE) {
if (remote_is_branch origin)
printf(rebasing ?
-
On Mon, Apr 15, 2013 at 07:34:07PM -0700, Brandon Casey wrote:
Right. My assumption was that we are primarily interested in protecting
against the die_routine. Compat functions should never be calling die.
I think the rule we have been enforcing is less strict than that. We
have only
On Mon, Apr 15, 2013 at 06:45:04PM -0700, Jonathan Nieder wrote:
Jeff King wrote:
--- a/run-command.c
+++ b/run-command.c
@@ -603,7 +603,7 @@ static NORETURN void die_async(const char *err, va_list
params)
{
vreportf(fatal: , err, params);
- if
Ramkumar Ramachandra wrote:
When set,
instead of cloning the given repository as-is, it relocates the gitdir
of the repository to the path specified by this variable.
Interesting. As the discussion downthread from this illustrated, I am
Matthieu Moy wrote:
Junio C Hamano gits...@pobox.com writes:
Yes, that is why I said for pull-merge, --authsquash is neutral-to-better
and pull.autosquash is harmful.
To speak from my experience: I find myself typing git stash git pull
git stash pop relatively often.
To that end, maybe
On Fri, Apr 12, 2013 at 6:20 PM, Jakub Narębski jna...@gmail.com wrote:
-- 8 --
Subject: [PATCH] gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM
The flow of the text describing GITWEB_CONFIG_SYSTEM and
GITWEB_CONFIG_COMMON in gitweb/INSTALL is awkward. This is
bad. Oh the
Ramkumar Ramachandra wrote:
Matthieu Moy wrote:
No, you don't. Just try if you're not convinced:
Oh, I trusted the documentation on this one and never tried with a
dirty worktree myself. Please fix the documentation, if you know how
exactly to correct it.
The manual says:
git
n Mon, Apr 15, 2013 at 4:28 PM, Junio C Hamano gits...@pobox.com wrote:
* jn/gitweb-install-doc (2013-04-15) 1 commit
- gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM
Reword gitweb configuration instrutions.
Will merge to 'next'.
While the re-worded text is easier on the
Signed-off-by: Jiang Xin worldhello@gmail.com
Reviewed-by: Nguyễn Thái Ngọc Duy pclo...@gmail.com
Reviewed-by: Jonathan Nieder jrnie...@gmail.com
---
Micronit: it would be nicer to use printf_ln to save translators the
trouble of worrying about the final newline.
Reroll with the help of
On Mon, Apr 15, 2013 at 11:18 AM, Ramkumar Ramachandra
artag...@gmail.com wrote:
A few small personal itches off the top of my head:
- Make git status -s show state status as well: this essentially
requires writing an equivalent of wt_status_print_state() for use in
wt_shortstatus_print().
I
On Sun, Apr 14, 2013 at 3:57 AM, John Keeping j...@keeping.me.uk wrote:
This issues a warning while stripping signatures from signed tags, which
allows us to use it as default behaviour for remote helpers which cannot
specify how to handle signed tags.
Perhaps it makes sense to instead count
Felipe Contreras felipe.contre...@gmail.com writes:
So it should be clear now: the remote namespace refs/origin/master is
updated, but not the remote helper's namespace
refs/testgit/origin/master, which is what I already said. I don't know
what more do you expect. When you push
Jeff King p...@peff.net writes:
FWIW, I do not think it was so much rejected as that I had initially
planned to implement it, then decided against it. Mostly because I
wanted to actually get annoyed with each piece of advice before
disabling it. Because sometimes the right answer is actually
Thanks, both. Will replace what is queued with this version.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Apr 15, 2013 at 07:53:48AM -0700, Junio C Hamano wrote:
Yes. The concept isn't that hard, but the question was one of whether it
would break some obscure workflows. But I don't remember all of the
details; I think I gave some examples in past threads.
I think the one Thomas lists
Drew Northup n1xim.em...@gmail.com writes:
+ Note that the GITWEB_CONFIG_SYSTEM system-wide configuration file is
+ only used for instances that lack per-instance configuration file.
+ You can use GITWEB_CONFIG_COMMON common system-wide configuration
+ file (normally
Sverre Rabbelier srabbel...@gmail.com writes:
On Sun, Apr 14, 2013 at 3:57 AM, John Keeping j...@keeping.me.uk wrote:
This issues a warning while stripping signatures from signed tags, which
allows us to use it as default behaviour for remote helpers which cannot
specify how to handle signed
On Mon, Apr 15, 2013 at 9:47 PM, Junio C Hamano gits...@pobox.com wrote:
When you see 78 in the output and you know you have 92 tags in the
repository, is that sufficient to let you go on, or do we also need
an easy way to tell which ones are those 78 that were stripped and
the remaining 14
Jonathan Nieder wrote:
I wouldn't be surprised if there's still a documentation bug, though:
a lack of clarity, a missing hint somewhere else, something else
misleading. That seems especially likely when you say I trusted the
documentation on this one. Care to point to the appropriate
Ramkumar Ramachandra wrote:
If there were uncommitted worktree changes present when the merge
started, git merge --abort will in some cases be unable to reconstruct
these changes. It is therefore recommended to always commit or stash
your changes before running git merge.
Matthieu (and
On Mon, Apr 15, 2013 at 11:12 PM, Junio C Hamano gits...@pobox.com wrote:
Felipe Contreras felipe.contre...@gmail.com writes:
So it should be clear now: the remote namespace refs/origin/master is
updated, but not the remote helper's namespace
refs/testgit/origin/master, which is what I
Junio C Hamano wrote:
Sverre Rabbelier srabbel...@gmail.com writes:
Perhaps it makes sense to instead count the number of signed tags and
emit Stripped signature from %d tags? For example, for git.git it
would be on the order of a hundred warning lines.
When you see 78 in the output and you
101 - 168 of 168 matches
Mail list logo