[PATCH 1/2] gitweb: infrastructure for tags feed

2017-04-18 Thread Giuseppe Bilotta
Signed-off-by: Giuseppe Bilotta --- gitweb/gitweb.perl | 79 +++--- 1 file changed, 58 insertions(+), 21 deletions(-) diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 7cf68f07b7..4adea84006 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/git

[PATCH 2/2] gitweb: expose tags feed in appropriate places

2017-04-18 Thread Giuseppe Bilotta
Signed-off-by: Giuseppe Bilotta --- gitweb/gitweb.perl | 47 +-- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 4adea84006..8be7444988 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.per

[PATCH 0/2] gitweb: tags feeds

2017-04-18 Thread Giuseppe Bilotta
A smallish patchset to implement RSS and Atom feeds to complement the tags view, accessible as verbs `tags_rss` and `tags_atom`. (I actually made this some 5 years ago, and it has been running on http://git.oblomov.eu/ since, but for some reason I forgot to submit it for upstreaming.) The patchse

Re: [PATCH v5 02/11] t0061: run_command executes scripts without a #! line

2017-04-18 Thread Johannes Sixt
Am 19.04.2017 um 07:43 schrieb Johannes Sixt: Am 19.04.2017 um 01:17 schrieb Brandon Williams: Add a test to 't0061-run-command.sh' to ensure that run_command can continue to execute scripts which don't include a '#!' line. Why is this necessary? I am pretty certain that our emulation layer on

[bug?] docs in Documentation/technical/ do not seem to be distributed

2017-04-18 Thread Samuel Lijin
It's possible this may have nothing to do with the Git project itself because I have absolutely no idea how this is handled on the packaging side or, possibly, if this is actually intended. There are a couple of links floating around in the man pages pointing to pages in technical/, such as to tec

Re: [PATCH v5 11/11] run-command: block signals between fork and execve

2017-04-18 Thread Johannes Sixt
Am 19.04.2017 um 01:18 schrieb Brandon Williams: @@ -400,6 +404,53 @@ static char **prep_childenv(const char *const *deltaenv) } #endif Does this #endif in this hunk context belong to an #ifndef GIT_WINDOWS_NATIVE? If so, I wonder why these new functions are outside these brackets? An over

What's cooking in git.git (Apr 2017, #03; Tue, 18)

2017-04-18 Thread Junio C Hamano
Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'. The ones marked with '.' do not appear in any of the integration branches, but I am still holding onto them. You can find the changes described

Re: [PATCH v5 02/11] t0061: run_command executes scripts without a #! line

2017-04-18 Thread Johannes Sixt
Am 19.04.2017 um 01:17 schrieb Brandon Williams: Add a test to 't0061-run-command.sh' to ensure that run_command can continue to execute scripts which don't include a '#!' line. Why is this necessary? I am pretty certain that our emulation layer on Windows can only run scripts with a shbang li

Re: [PATCH] clone: add a --no-tags option to clone without tags

2017-04-18 Thread Junio C Hamano
Junio C Hamano writes: > Ævar Arnfjörð Bjarmason writes: > >> Add a --no-tags option to "git clone" to clone without tags. Currently >> there's no easy way to clone a repository and end up with just a >> "master" branch via --single-branch, or track all branches and no >> tags. Now --no-tags ca

Re: [PATCHv2 4/4] builtin/reset: add --recurse-submodules switch

2017-04-18 Thread Junio C Hamano
Stefan Beller writes: > git-reset is yet another working tree manipulator, which should > be taught about submodules. > > One use case of "git-reset" is to reset to a known good state, > and dropping commits that did not work as expected. > > In that case one of the expected outcomes from a hard

Re: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread Junio C Hamano
David Turner writes: > If the writer has the smaller HOST_NAME_MAX, this will work fine. If the > reader > has the smaller HOST_NAME_MAX, and the writer's actual value is too long, > then there's no way the strcmp would succeed anyway. So I don't think we need > to worry about it. Hmph, I hav

Re: [PATCH] completion: expand "push --delete " for refs on that

2017-04-18 Thread Junio C Hamano
Ævar Arnfjörð Bjarmason writes: > Change the completion of "push --delete " to complete > refs on that , not all refs. Before this e.g. cloning git.git > and doing "git push --delete origin p" will complete nothing, > whereas origin/p will uselessly complete origin/pu. > > Now p will complete a

Re: [PATCH v4 0/3] rebase: --signoff support

2017-04-18 Thread Junio C Hamano
Giuseppe Bilotta writes: > Some work about extending --signoff support to interactive rebases is > underway in the `rebase-signoff-ext` branch, but there's a lot of > corner cases to test and work-out, so I guess that'll be fore some > other time. Yup, that is fine. Will queue. Thanks.

Re: [PATCH v1] diffcore-rename: speed up register_rename_src

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 10:56:08PM -0400, Jeff King wrote: > > When adding many things, we often just append and then sort at the > > end after we finished adding. I wonder if recent "check the last > > one and append" optimization beats that strategy. > > The big question is whether we need to

Re: [PATCH v3 1/2] use HOST_NAME_MAX to size buffers for gethostname(2)

2017-04-18 Thread Junio C Hamano
Jonathan Nieder writes: >> @@ -274,7 +278,7 @@ static const char *lock_repo_for_gc(int force, pid_t* >> ret_pid) >> * running. >> */ >> time(NULL) - st.st_mtime <= 12 * 3600 && >> -fscanf(fp, "%"SCNuMAX" %127c",

Re: [PATCH v1] diffcore-rename: speed up register_rename_src

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 07:45:05PM -0700, Junio C Hamano wrote: > Jeff King writes: > > > On Tue, Apr 18, 2017 at 07:44:21PM +, g...@jeffhostetler.com wrote: > > > >> From: Jeff Hostetler > >> > >> Teach register_rename_src() to see if new file pair > >> can simply be appended to the renam

Re: [PATCH v3 2/2] xgethostname: handle long hostnames

2017-04-18 Thread Junio C Hamano
Jonathan Nieder writes: > Hi, > > David Turner wrote: > >> If the full hostname doesn't fit in the buffer supplied to >> gethostname, POSIX does not specify whether the buffer will be >> null-terminated, so to be safe, we should do it ourselves. Introduce >> new function, xgethostname, which ens

Re: [PATCH] various: disallow --no-no-OPT for --no-opt options

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 07:40:37PM -0700, Junio C Hamano wrote: > > It might even be possible to detect the existing line and > > have parse-options automatically respect "--foo" when "--no-foo" is > > present. But that may run afoul of callers that add both "--foo" and > > "--no-foo" manually. >

Re: [PATCH v3 2/2] xgethostname: handle long hostnames

2017-04-18 Thread Junio C Hamano
David Turner writes: > If the full hostname doesn't fit in the buffer supplied to > gethostname, POSIX does not specify whether the buffer will be > null-terminated, so to be safe, we should do it ourselves. Introduce The name of the character whose ASCII value is '\0' is NUL, not null (similar

Re: [PATCH v1] diffcore-rename: speed up register_rename_src

2017-04-18 Thread Junio C Hamano
Jeff King writes: > On Tue, Apr 18, 2017 at 07:44:21PM +, g...@jeffhostetler.com wrote: > >> From: Jeff Hostetler >> >> Teach register_rename_src() to see if new file pair >> can simply be appended to the rename_src[] array before >> performing the binary search to find the proper insertion

Re: [PATCH] various: disallow --no-no-OPT for --no-opt options

2017-04-18 Thread Junio C Hamano
Jeff King writes: > On Wed, Apr 19, 2017 at 12:29:18AM +0200, René Scharfe wrote: > ... >> PARSE_OPT_NONEG should only be used for options where a negation doesn't >> make sense, e.g. for the --stage option of checkout-index. > > I think we do strive to avoid "--no-no-foo", and instead have "--no

Re: no MERGE_HEAD after octopus merge failure

2017-04-18 Thread Junio C Hamano
Max Ivanov writes: > I am using git 2.12.0 and it leaves no MERGE_HEAD once octopus merge > failed with conflicts. Is it intentional? Files have conflicts markers > and once resolved `git commit` creates just a normal commit, which is > very inconvenient and confusing. I suspect you got these li

Re: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread Junio C Hamano
René Scharfe writes: > How important is it to scan the whole file in one call? We could split > it up like this and use a strbuf to handle host names of any length. We > need to be permissive here to allow machines with different values for > HOST_NAME_MAX to work with the same file on a networ

Re: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread Junio C Hamano
Jeff King writes: > I doubt that doing it in one call matters. It's not like stdio promises > us any atomicity in the first place. > >> -fscanf(fp, "%"SCNuMAX" %127c", &pid, locking_host) == 2 >> && >> +fscanf(fp, "%"SCNuMAX" ", &pid) == 1 && >> +

Re: [PATCH] various: disallow --no-no-OPT for --no-opt options

2017-04-18 Thread Jeff King
On Wed, Apr 19, 2017 at 12:29:18AM +0200, René Scharfe wrote: > Am 18.04.2017 um 19:09 schrieb Ævar Arnfjörð Bjarmason: > > Change various --no-OPT options which don't supply PARSE_OPT_NONEG to > > make --no-no-OPT an error. > > > > All of these worked before this change, e.g. doing cloning by do

Re: [PATCH] Documentation/git-checkout: make doc. of checkout clearer

2017-04-18 Thread Junio C Hamano
Christoph Michelbach writes: > On Mon, 2017-04-17 at 17:31 -0700, Junio C Hamano wrote: > >> Obviously, "grab all paths that match out of , add >> them to the index and copy them out to the working tree" will never >> be able to _restore_ the lack of 'd', even it may match the >> being used to

Re: [PATCH] clone: add a --no-tags option to clone without tags

2017-04-18 Thread Junio C Hamano
Ævar Arnfjörð Bjarmason writes: > Add a --no-tags option to "git clone" to clone without tags. Currently > there's no easy way to clone a repository and end up with just a > "master" branch via --single-branch, or track all branches and no > tags. Now --no-tags can be added to "git clone" with o

Re: [PATCH v3 2/2] xgethostname: handle long hostnames

2017-04-18 Thread Jonathan Nieder
Hi, David Turner wrote: > If the full hostname doesn't fit in the buffer supplied to > gethostname, POSIX does not specify whether the buffer will be > null-terminated, so to be safe, we should do it ourselves. Introduce > new function, xgethostname, which ensures that there is always a \0 > at

Re: [PATCH v1] diffcore-rename: speed up register_rename_src

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 07:44:21PM +, g...@jeffhostetler.com wrote: > From: Jeff Hostetler > > Teach register_rename_src() to see if new file pair > can simply be appended to the rename_src[] array before > performing the binary search to find the proper insertion > point. I guess your perf

Re: [PATCH v3 1/2] use HOST_NAME_MAX to size buffers for gethostname(2)

2017-04-18 Thread Jonathan Nieder
Hi, David Turner wrote: > From: René Scharfe > > POSIX limits the length of host names to HOST_NAME_MAX. Export the > fallback definition from daemon.c and use this constant to make all > buffers used with gethostname(2) big enough for any possible result > and a terminating NUL. Since some pl

Re: [PATCH v11 2/5] p0006-read-tree-checkout: perf test to time read-tree

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 10:40:25PM +0100, Thomas Gummerer wrote: > > +test_perf_default_repo > > I like that it's possible to use a real world repository now instead > of forcing the use of a synthetic repository :) > > Is there a reason for this being test_perf_default_repo instead of > test_pe

Re: [PATCH v5 4/8] convert: Separate generic structures and variables from the filter specific ones

2017-04-18 Thread Junio C Hamano
Ben Peart writes: > On 4/16/2017 11:31 PM, Junio C Hamano wrote: >> Lars Schneider writes: >> >>> However, I think it eases code maintainability in the long run if a >>> function is "as pure as >>> possible" (IOW does rely on global state as less as possible). >> >> If the original relied on a

Re: [PATCH 3/2] ls-files: only recurse on active submodules

2017-04-18 Thread Junio C Hamano
Brandon Williams writes: > Add in a check to see if a submodule is active before attempting to > recurse. This prevents 'ls-files' from trying to operate on a submodule > which may not exist in the working directory. > > Signed-off-by: Brandon Williams > --- Sounds like this is something we ca

Re: [PATCH v5 05/11] string-list: add string_list_remove function

2017-04-18 Thread Stefan Beller
On Tue, Apr 18, 2017 at 4:36 PM, Brandon Williams wrote: > On 04/18, Stefan Beller wrote: >> On Tue, Apr 18, 2017 at 4:17 PM, Brandon Williams wrote: >> >> > >> > +void string_list_remove(struct string_list *list, const char *string, >> > + int free_util) >> > +{ >> > +

Re: [PATCH v5 05/11] string-list: add string_list_remove function

2017-04-18 Thread Brandon Williams
On 04/18, Stefan Beller wrote: > On Tue, Apr 18, 2017 at 4:17 PM, Brandon Williams wrote: > > > > > +void string_list_remove(struct string_list *list, const char *string, > > + int free_util) > > +{ > > + int exact_match; > > + int i = get_entry_index(list, strin

Re: [PATCH v5 05/11] string-list: add string_list_remove function

2017-04-18 Thread Stefan Beller
On Tue, Apr 18, 2017 at 4:17 PM, Brandon Williams wrote: > > +void string_list_remove(struct string_list *list, const char *string, > + int free_util) > +{ > + int exact_match; > + int i = get_entry_index(list, string, &exact_match); > + > + if (exact_match

Re: [PATCH] clone: add a --no-tags option to clone without tags

2017-04-18 Thread Brandon Williams
On 04/18, Ævar Arnfjörð Bjarmason wrote: > Add a --no-tags option to "git clone" to clone without tags. Currently > there's no easy way to clone a repository and end up with just a > "master" branch via --single-branch, or track all branches and no > tags. Now --no-tags can be added to "git clone"

[PATCH v5 11/11] run-command: block signals between fork and execve

2017-04-18 Thread Brandon Williams
From: Eric Wong Signal handlers of the parent firing in the forked child may have unintended side effects. Rather than auditing every signal handler we have and will ever have, block signals while forking and restore default signal handlers in the child before execve. Restoring default signal h

[PATCH v5 06/11] run-command: prepare child environment before forking

2017-04-18 Thread Brandon Williams
In order to avoid allocation between 'fork()' and 'exec()' prepare the environment to be used in the child process prior to forking. Switch to using 'execve()' so that the construct child environment can used in the exec'd process. Signed-off-by: Brandon Williams --- run-command.c | 66

[PATCH v5 09/11] run-command: handle dup2 and close errors in child

2017-04-18 Thread Brandon Williams
Signed-off-by: Brandon Williams --- run-command.c | 58 ++ 1 file changed, 42 insertions(+), 16 deletions(-) diff --git a/run-command.c b/run-command.c index 1f15714b1..615b6e9c9 100644 --- a/run-command.c +++ b/run-command.c @@ -213,6 +213

[PATCH v5 04/11] run-command: use the async-signal-safe execv instead of execvp

2017-04-18 Thread Brandon Williams
Convert the function used to exec from 'execvp()' to 'execv()' as the (p) variant of exec isn't async-signal-safe and has the potential to call malloc during the path resolution it performs. Instead we simply do the path resolution ourselves during the preparation stage prior to forking. There al

[PATCH v5 10/11] run-command: add note about forking and threading

2017-04-18 Thread Brandon Williams
All non-Async-Signal-Safe functions (e.g. malloc and die) were removed between 'fork' and 'exec' in start_command in order to avoid potential deadlocking when forking while multiple threads are running. This deadlocking is possible when a thread (other than the one forking) has acquired a lock and

[PATCH v5 08/11] run-command: eliminate calls to error handling functions in child

2017-04-18 Thread Brandon Williams
All of our standard error handling paths have the potential to call malloc or take stdio locks; so we must avoid them inside the forked child. Instead, the child only writes an 8 byte struct atomically to the parent through the notification pipe to propagate an error. All user-visible error report

[PATCH v5 07/11] run-command: don't die in child when duping /dev/null

2017-04-18 Thread Brandon Williams
Signed-off-by: Brandon Williams --- run-command.c | 28 +--- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/run-command.c b/run-command.c index 15e2e74a7..b3a35dd82 100644 --- a/run-command.c +++ b/run-command.c @@ -117,18 +117,6 @@ static inline void clos

[PATCH v5 00/11] forking and threading

2017-04-18 Thread Brandon Williams
v5 addresses the issues with creating the child's environment. Instead of doing vanilla C string manipulation, I used a struct string_list and struct strbuf. The code should be much easier to read and understand now. I also needed to add a function to remove a string_list_item from a string_list

[PATCH v5 02/11] t0061: run_command executes scripts without a #! line

2017-04-18 Thread Brandon Williams
Add a test to 't0061-run-command.sh' to ensure that run_command can continue to execute scripts which don't include a '#!' line. Signed-off-by: Brandon Williams --- t/t0061-run-command.sh | 11 +++ 1 file changed, 11 insertions(+) diff --git a/t/t0061-run-command.sh b/t/t0061-run-comman

[PATCH v5 01/11] t5550: use write_script to generate post-update hook

2017-04-18 Thread Brandon Williams
The post-update hooks created in t5550-http-fetch-dumb.sh is missing the "!#/bin/sh" line which can cause issues with portability. Instead create the hook using the 'write_script' function which includes the proper "#!" line. Signed-off-by: Brandon Williams --- t/t5550-http-fetch-dumb.sh | 5 ++

[PATCH v5 05/11] string-list: add string_list_remove function

2017-04-18 Thread Brandon Williams
Teach string-list to be able to remove a string from a sorted 'struct string_list'. Signed-off-by: Brandon Williams --- string-list.c | 18 ++ string-list.h | 5 + 2 files changed, 23 insertions(+) diff --git a/string-list.c b/string-list.c index 45016ad86..8f7b69ada 100644

[PATCH v5 03/11] run-command: prepare command before forking

2017-04-18 Thread Brandon Williams
According to [1] we need to only call async-signal-safe operations between fork and exec. Using malloc to build the argv array isn't async-signal-safe. In order to avoid allocation between 'fork()' and 'exec()' prepare the argv array used in the exec call prior to forking the process. [1] http:/

Re: [PATCH] various: disallow --no-no-OPT for --no-opt options

2017-04-18 Thread René Scharfe
Am 18.04.2017 um 19:09 schrieb Ævar Arnfjörð Bjarmason: Change various --no-OPT options which don't supply PARSE_OPT_NONEG to make --no-no-OPT an error. All of these worked before this change, e.g. doing cloning by doing "git clone --no-no-checkout" is equivalent to just "git clone", but this wa

[PATCH v3 2/2] xgethostname: handle long hostnames

2017-04-18 Thread David Turner
If the full hostname doesn't fit in the buffer supplied to gethostname, POSIX does not specify whether the buffer will be null-terminated, so to be safe, we should do it ourselves. Introduce new function, xgethostname, which ensures that there is always a \0 at the end of the buffer. Signed-off-b

[PATCH v3 1/2] use HOST_NAME_MAX to size buffers for gethostname(2)

2017-04-18 Thread David Turner
From: René Scharfe POSIX limits the length of host names to HOST_NAME_MAX. Export the fallback definition from daemon.c and use this constant to make all buffers used with gethostname(2) big enough for any possible result and a terminating NUL. Inspired-by: David Turner Signed-off-by: Rene Sch

[PATCH v3 0/2] gethostbyname fixes

2017-04-18 Thread David Turner
This version includes Junio's fixup to René's patch, and then my patch rebased on top of René's. I thought it was easier to just send both in one series, than to have Junio do a bunch of conflict resolution. I think this still needs Junio's signoff on the first patch, since I've added his code. D

Re: [PATCH v11 2/5] p0006-read-tree-checkout: perf test to time read-tree

2017-04-18 Thread Thomas Gummerer
On 04/17, g...@jeffhostetler.com wrote: > From: Jeff Hostetler > > Created t/perf/repos/many-files.sh to generate large, but > artificial repositories. > > Created t/perf/p0006-read-tree-checkout.sh to measure > performance on various read-tree, checkout, and update-index > operations. This tes

[PATCHv2 3/4] submodule.c: submodule_move_head works with broken submodules

2017-04-18 Thread Stefan Beller
Early on in submodule_move_head just after the check if the submodule is initialized, we need to check if the submodule is populated correctly. If the submodule is initialized but doesn't look like it is populated, this is a red flag and can indicate multiple sorts of failures: (1) The submodule m

[PATCHv2 2/4] submodule.c: uninitialized submodules are ignored in recursive commands

2017-04-18 Thread Stefan Beller
This was an oversight when working on the working tree modifying commands recursing into submodules. To test for uninitialized submodules, introduce another submodule "uninitialized_sub". Adding it via `submodule add` will activate the submodule in the preparation area (in create_lib_submodule_rep

[PATCHv2 4/4] builtin/reset: add --recurse-submodules switch

2017-04-18 Thread Stefan Beller
git-reset is yet another working tree manipulator, which should be taught about submodules. One use case of "git-reset" is to reset to a known good state, and dropping commits that did not work as expected. In that case one of the expected outcomes from a hard reset would be to have broken submodu

[PATCHv2 1/4] entry.c: submodule recursing: respect force flag correctly

2017-04-18 Thread Stefan Beller
In case of a non-forced worktree update, the submodule movement is tested in a dry run first, such that it doesn't matter if the actual update is done via the force flag. However for correctness, we want to give the flag as specified by the user. All callers have been inspected and updated if neede

[PATCHv2 0/4] recursive submodules: git-reset!

2017-04-18 Thread Stefan Beller
v2: * improved commit message to be proper English (Thanks, Philip!) * clarified why the patch 2 is so short (i.e. it doesn't matter if the submodule is initialized in the preparation repo, we care about the actual testing repo! Thanks, Brandon) * reworded patch 1 (Thanks Jonathan) Thanks, Ste

Re: [PATCH] clone: add a --no-tags option to clone without tags

2017-04-18 Thread Ævar Arnfjörð Bjarmason
On Tue, Apr 18, 2017 at 9:15 PM, Ævar Arnfjörð Bjarmason wrote: > N_("clone only one branch, HEAD or --branch")), > + OPT_BOOL_NONEG(0, "no-tags", &option_no_tags, > + N_("don't clone any tags, and set > remote..tagOpt=--no-tags")), > OPT_BO

Re: [PATCH v4 05/10] run-command: prepare child environment before forking

2017-04-18 Thread Brandon Williams
On 04/18, Eric Wong wrote: > > +static int env_isequal(const char *e1, const char *e2) > > +{ > > + for (;;) { > > + char c1 = *e1++; > > + char c2 = *e2++; > > + c1 = (c1 == '=') ? '\0' : tolower(c1); > > + c2 = (c2 == '=') ? '\0' : tolower(c2); > > Deali

[PATCH v1] diffcore-rename: speed up register_rename_src

2017-04-18 Thread git
From: Jeff Hostetler Teach register_rename_src() to see if new file pair can simply be appended to the rename_src[] array before performing the binary search to find the proper insertion point. This is a performance optimization. This routine is called during run_diff_files in status and the ca

[PATCH v1] diffcore-rename speedup

2017-04-18 Thread git
From: Jeff Hostetler Here is another micro-optimization for very large repositories. Speed up register_rename_src() in diffcore-rename.c Jeff Hostetler (1): diffcore-rename: speed up register_rename_src diffcore-rename.c | 13 + 1 file changed, 13 insertions(+) -- 2.9.3

Re: [PATCH v1] travis-ci: add static analysis build job to run coccicheck

2017-04-18 Thread Stefan Beller
On Sun, Apr 16, 2017 at 6:31 AM, Sebastian Schuberth wrote: > On 2017-04-11 09:26, Lars Schneider wrote: > >> Add a dedicated build job for static analysis. As a starter we only run >> coccicheck but in the future we could run Clang Static Analyzer or >> similar tools, too. > > > Just FYI, some ti

Re: Fwd: Failed shallow submodule clone for fixed SHA1 falls back to checking out HEAD

2017-04-18 Thread Sebastian Schuberth
On 2017-04-18 21:12, Stefan Beller wrote: Wouldn't it make more sense to unshallow the submodule clone in this case and checkout the configured commit 2aa4cce7d7fd46164030f2b4d244c4b89e77f722 afterwards? If I remember correctly the conclusion of the discussion at the time was that people are

[PATCH] clone: add a --no-tags option to clone without tags

2017-04-18 Thread Ævar Arnfjörð Bjarmason
Add a --no-tags option to "git clone" to clone without tags. Currently there's no easy way to clone a repository and end up with just a "master" branch via --single-branch, or track all branches and no tags. Now --no-tags can be added to "git clone" with or without --single-branch to clone a reposi

Fwd: Failed shallow submodule clone for fixed SHA1 falls back to checking out HEAD

2017-04-18 Thread Stefan Beller
On Tue, Apr 18, 2017 at 6:04 AM, Sebastian Schuberth wrote: > Hi, > > this is using "git version 2.12.2.windows.2" on Windows / "git version > 2.12.2-639-g584f897" on Linux. > > I have configured my superproject with .gitmodules saying > > ---8<--- > [submodule "src/funTest/resources/projects/ext

Re: [PATCH v9 0/5] [GSoC] remove_subtree(): reimplement using iterators

2017-04-18 Thread Stefan Beller
On Mon, Apr 17, 2017 at 9:09 PM, Junio C Hamano wrote: > Daniel Ferreira writes: > >> I think this is the closest to a final version we've ever gotten. I >> followed all of Michael and Stefan's suggestions on top of v8, and with >> Michael's endorsement made dir_iterator_begin() return NULL and s

Re: [PATCH v2 2/2] ls-files: fix path used when recursing into submodules

2017-04-18 Thread Stefan Beller
On Mon, Apr 17, 2017 at 7:03 PM, Junio C Hamano wrote: > Jacob Keller writes: > >> From: Jacob Keller >> >> Don't assume that the current working directory is the root of the >> repository. Correctly generate the path for the recursing child >> processes by building it from the work_tree() root

RE: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread David Turner
> -Original Message- > From: René Scharfe [mailto:l@web.de] > Sent: Tuesday, April 18, 2017 12:08 PM > To: Junio C Hamano ; David Turner ... > >> Of course, my_host is sized to HOST_NAME_MAX + 1 and we are comparing > >> it with locking_host, so perhaps we'd need to take this version t

Re: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 05:43:29PM +, David Turner wrote: > > A lock can catch the racy cases where both run at the same time. But I > > think that > > even: > > > > git -c repack.writeBitmaps=true repack -Ad > > [...wait...] > > git gc > > > > is questionable, because that gc will er

RE: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread David Turner
> -Original Message- > From: Jeff King [mailto:p...@peff.net] > Sent: Tuesday, April 18, 2017 1:20 PM > To: David Turner > Cc: git@vger.kernel.org; christian.cou...@gmail.com; mf...@codeaurora.org; > jacob.kel...@gmail.com > Subject: Re: [PATCH] repack: respect gc.pid lock > > On Tue, A

Re: [PATCH v3 4/4] convert: add "status=delayed" to filter process protocol

2017-04-18 Thread Taylor Blau
On Tue, Apr 18, 2017 at 06:14:36PM +0200, Lars Schneider wrote: > > Both Git and the filter are going to have to keep these paths in memory > > somewhere, be that in-process, or on disk. That being said, I can see > > potential > > troubles with a large number of long paths that exceed the memory

Re: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 05:16:52PM +, David Turner wrote: > > -Original Message- > > From: Jeff King [mailto:p...@peff.net] > > Sent: Monday, April 17, 2017 11:42 PM > > To: David Turner > > Cc: git@vger.kernel.org; christian.cou...@gmail.com; mf...@codeaurora.org; > > jacob.kel...@gm

Re: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 05:08:14PM +, David Turner wrote: > On 64-bit systems, I think core.packedGitLimit doesn't make a > lot of sense. There is plenty of address space. Why not use it? That's my gut feeling, too. I'd have a slight worry that the OS's paging behavior may respond different

RE: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread David Turner
> -Original Message- > From: Jeff King [mailto:p...@peff.net] > Sent: Monday, April 17, 2017 11:42 PM > To: David Turner > Cc: git@vger.kernel.org; christian.cou...@gmail.com; mf...@codeaurora.org; > jacob.kel...@gmail.com > Subject: Re: [PATCH] repack: respect gc.pid lock > > On Mon, Apr

[PATCH] various: disallow --no-no-OPT for --no-opt options

2017-04-18 Thread Ævar Arnfjörð Bjarmason
Change various --no-OPT options which don't supply PARSE_OPT_NONEG to make --no-no-OPT an error. All of these worked before this change, e.g. doing cloning by doing "git clone --no-no-checkout" is equivalent to just "git clone", but this was never intended, and is inconsistent with other --no-OPT

RE: [PATCH] repack: respect gc.pid lock

2017-04-18 Thread David Turner
> -Original Message- > From: Jeff King [mailto:p...@peff.net] > Sent: Monday, April 17, 2017 11:42 PM > To: David Turner > Cc: git@vger.kernel.org; christian.cou...@gmail.com; mf...@codeaurora.org; > jacob.kel...@gmail.com > Subject: Re: [PATCH] repack: respect gc.pid lock > > On Mon, Apr

Re: FW: Issue in gitbash changing directory

2017-04-18 Thread Kevin Daudt
On Tue, Apr 18, 2017 at 12:48:09PM +, Bonk, Gregory wrote: > > I accidently typed 'cd //'  and it worked. > > gbonk@ICC11167 MINGW64 /c/git/mtb-messagehub-information-radiator (master) > $ cd // > > gbonk@ICC11167 MINGW64 // > $ cd .. This has very little to do with git, but more with bash

Re: GIT_EXEC_PATH

2017-04-18 Thread Kevin Daudt
On Tue, Apr 18, 2017 at 01:47:14PM +0200, Christoph Egger wrote: > Hi! > > Concerning $GIT_EXEC_PATH .. is that supposed to be a $PATh like variable? as > in can it have more than one path (colon-separated)? I have currently two > directories there (one with a git-annex installation, one with th

Re: [PATCH v5 4/8] convert: Separate generic structures and variables from the filter specific ones

2017-04-18 Thread Ben Peart
On 4/16/2017 11:31 PM, Junio C Hamano wrote: Lars Schneider writes: -static struct cmd2process *find_multi_file_filter_entry(struct hashmap *hashmap, const char *cmd) +static struct subprocess_entry *find_multi_file_filter_entry(const char *cmd) I am curious why you removed the hashmap param

Re: [PATCH v10 3/3] read-cache: speed up add_index_entry during checkout

2017-04-18 Thread Jeff Hostetler
On 4/17/2017 10:53 AM, Jeff Hostetler wrote: On 4/15/2017 1:55 PM, René Scharfe wrote: Am 14.04.2017 um 21:12 schrieb g...@jeffhostetler.com: From: Jeff Hostetler Very nice, especially the perf test! But can we unbundle the different optimizations into separate patches with their own pe

Re: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread Jeff King
On Tue, Apr 18, 2017 at 06:07:43PM +0200, René Scharfe wrote: > > - fscanf(fp, "%"SCNuMAX" %127c", &pid, locking_host) == 2 > > && > > + fscanf(fp, scan_fmt, &pid, locking_host) == 2 && > > /* be gentle to concurrent "gc" on remote hosts */

Re: [PATCH v3 4/4] convert: add "status=delayed" to filter process protocol

2017-04-18 Thread Lars Schneider
> On 12. Apr 2017, at 19:46, Taylor Blau wrote: > > I think this is a great approach and one that I'd be happy to implement in > LFS. > The additional capability isn't too complex, so I think other similar filters > to > LFS shouldn't have a hard time implementing it either. > > I left a few

Re: [PATCH v2] xgethostname: handle long hostnames

2017-04-18 Thread René Scharfe
Am 18.04.2017 um 03:41 schrieb Junio C Hamano: > Junio C Hamano writes: > >> David Turner writes: >> >>> @@ -250,14 +250,14 @@ static const char *lock_repo_for_gc(int force, pid_t* >>> ret_pid) >>> ... >>> if (!force) { >>> - static char locking_host[128]; >>> + static c

Re: [PATCH v1 0/3] travis-ci: build docs with asciidoctor

2017-04-18 Thread Lars Schneider
> On 18. Apr 2017, at 12:44, brian m. carlson > wrote: > >> On Tue, Apr 18, 2017 at 10:32:59AM +0200, Lars Schneider wrote: >> >>> On 14. Apr 2017, at 00:41, Junio C Hamano wrote: >>> Having said that, I wonder if we get some interesting results out of >>> building the documentation twice, th

Re: [PATCH] p0004: make perf test executable

2017-04-18 Thread Jeff Hostetler
On 4/18/2017 10:24 AM, Christian Couder wrote: It looks like in 89c3b0ad43 (name-hash: add perf test for lazy_init_name_hash, 2017-03-23) p0004 was not created with the execute unix rights. Let's fix that. Signed-off-by: Christian Couder --- t/perf/p0004-lazy-init-name-hash.sh | 0 1 file ch

no MERGE_HEAD after octopus merge failure

2017-04-18 Thread Max Ivanov
Hi All, I am using git 2.12.0 and it leaves no MERGE_HEAD once octopus merge failed with conflicts. Is it intentional? Files have conflicts markers and once resolved `git commit` creates just a normal commit, which is very inconvenient and confusing. Thanks

[PATCH] p0004: make perf test executable

2017-04-18 Thread Christian Couder
It looks like in 89c3b0ad43 (name-hash: add perf test for lazy_init_name_hash, 2017-03-23) p0004 was not created with the execute unix rights. Let's fix that. Signed-off-by: Christian Couder --- t/perf/p0004-lazy-init-name-hash.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change

[PATCH] p3400: add perf tests for rebasing many changes

2017-04-18 Thread Christian Couder
Rebasing onto many changes is interesting, but it's also interesting to see what happens when rebasing many changes. And while at it, let's also look at the impact of using a split index. Signed-off-by: Christian Couder --- t/perf/p3400-rebase.sh | 22 +- 1 file changed, 21

[PATCH] completion: expand "push --delete " for refs on that

2017-04-18 Thread Ævar Arnfjörð Bjarmason
Change the completion of "push --delete " to complete refs on that , not all refs. Before this e.g. cloning git.git and doing "git push --delete origin p" will complete nothing, whereas origin/p will uselessly complete origin/pu. Now p will complete as "pu". The completion of giving --delete late

Failed shallow submodule clone for fixed SHA1 falls back to checking out HEAD

2017-04-18 Thread Sebastian Schuberth
Hi, this is using "git version 2.12.2.windows.2" on Windows / "git version 2.12.2-639-g584f897" on Linux. I have configured my superproject with .gitmodules saying ---8<--- [submodule "src/funTest/resources/projects/external/jgnash"] path = src/funTest/resources/projects/external/jgnash

FW: Issue in gitbash changing directory

2017-04-18 Thread Bonk, Gregory
I accidently typed 'cd //'  and it worked. gbonk@ICC11167 MINGW64 /c/git/mtb-messagehub-information-radiator (master) $ cd // gbonk@ICC11167 MINGW64 // $ cd ..

GIT_EXEC_PATH

2017-04-18 Thread Christoph Egger
Hi! Concerning $GIT_EXEC_PATH .. is that supposed to be a $PATh like variable? as in can it have more than one path (colon-separated)? I have currently two directories there (one with a git-annex installation, one with the normal git stuff) and it seems to mostly work. However git-sh-setup is u

Re: [PATCH] Documentation/git-checkout: make doc. of checkout clearer

2017-04-18 Thread Christoph Michelbach
On Mon, 2017-04-17 at 17:31 -0700, Junio C Hamano wrote: > "Philip Oakley" writes: > > > > > > > > > > > > > > If we'd created and added a file d just before the checkout, > > > > what > > > > should > > > > have happened to d, and why? > > > I understand what the command does. It behaves perf

Re: [PATCH] Documentation/git-checkout: make doc. of checkout clearer

2017-04-18 Thread Christoph Michelbach
On Mon, 2017-04-17 at 17:26 -0700, Junio C Hamano wrote: > "Philip Oakley" writes: > > > > > I'd guess that the misunderstanding is that you maybe thought that > > the > > whole directory would be reset to it's old state and the files b and > > c > > deleted, rather than just the named files pre

Re: [PATCH] Documentation/git-checkout: make doc. of checkout clearer

2017-04-18 Thread Christoph Michelbach
On Mon, 2017-04-17 at 21:59 +0100, Philip Oakley wrote: > I've added back the list, as it was accidentally dropped. Thanks. I'm sorry. I apparently pressed the wrong button in my emails client. What I wrote is visible in your quote. > From: "Christoph Michelbach" > > I understand what the comma

Re: [PATCH 0/7] PREVIEW: Introduce DC_AND_OPENSSL_SHA1 make flag

2017-04-18 Thread Johannes Schindelin
Hi Junio, On Wed, 29 Mar 2017, Junio C Hamano wrote: > Johannes Schindelin writes: > > > The approach I chose instead was to make the switch global, per > > command. Obviously, the next step is to identify the Git commands > > which accept objects from external sources (`clone`, `fetch`, > > `

Re: [PATCH 2/7] Makefile: optionally compile with both SHA1DC and SHA1_OPENSSL

2017-04-18 Thread Johannes Schindelin
Hi Junio, On Thu, 30 Mar 2017, Junio C Hamano wrote: > Johannes Schindelin writes: > > > +#ifdef SHA1_DC_AND_OPENSSL > > +void (*SHA1_Init_func)(SHA_CTX_union *ctx) = (void *)SHA1DCInit; > > +void (*SHA1_Update_func)(SHA_CTX_union *ctx, const void *pointer, size_t > > size) = > > + (void *)g

Re: Feature request: --format=json

2017-04-18 Thread demerphq
On 18 April 2017 at 10:44, Fred .Flintstone wrote: > Well the easiest way to work with that would be JSON. > So the best would be if Git could output the data I want in JSON format. > Then it would be easy for me to work with data. > > With git rev-list and git-cat file, its not so easy to reliabl

  1   2   >