The git-read-tree manpage has a table that is meant to
be shown with its spacing exactly as it is in the source. We
mark it as a "literal paragraph" by indenting each line by
at least one space. This renders OK with asciidoc for both
the HTML and manpage versions.
But there are two problems when w
I am Ms.Ella Golan, I am the Executive Vice President Banking Division with
FIRST INTERNATIONAL BANK OF ISRAEL LTD (FIBI).
I am getting in touch with you regarding an extremely important and urgent
matter. If you would oblige me the opportunity, I shall provide you with
details upon your response.
A few configuration variable names of Git are composite words. References
to such variables in manpages are hard to read because they use all-lowercase
names, without indicating where each word ends and begins.
Improve its readability by using camelCase instead. Git treats these
names case-insens
On Sat, Sep 23, 2017 at 01:34:54AM +0200, Martin Ågren wrote:
> Instead of setting the fields of rev->pending to 0/NULL, thereby leaking
> memory, call `object_array_clear(&rev->pending)`.
I wondered if these cases might sometimes work on an uninitialized
struct (so setting the fields uncondition
On Sat, Sep 23, 2017 at 01:34:48AM +0200, Martin Ågren wrote:
> Martin Ågren (6):
> builtin/commit: fix memory leak in `prepare_index()`
> commit: fix memory leak in `reduce_heads()`
> leak_pending: use `object_array_clear()`, not `free()`
> object_array: use `object_array_clear()`, not `f
On Sat, Sep 23, 2017 at 01:34:53AM +0200, Martin Ågren wrote:
> In a couple of places, we pop objects off an object array `foo` by
> decreasing `foo.nr`. We access `foo.nr` in many places, but most if not
> all other times we do so read-only, e.g., as we iterate over the array.
> But when we chang
On Sat, Sep 23, 2017 at 01:34:52AM +0200, Martin Ågren wrote:
> Instead of freeing `foo.objects` for an object array `foo` (sometimes
> conditionally), call `object_array_clear(&foo)`. This means we don't
> poke as much into the implementation, which is already a good thing, but
> also that we rel
On Sat, Sep 23, 2017 at 01:34:51AM +0200, Martin Ågren wrote:
> Setting `leak_pending = 1` tells `prepare_revision_walk()` not to
> release the `pending` array, and makes that the caller's responsibility.
> See 4a43d374f (revision: add leak_pending flag, 2011-10-01) and
> 353f5657a (bisect: use le
On Fri, Sep 22, 2017 at 02:41:06PM -0700, Stefan Beller wrote:
> > Ah, thanks. I _thought_ we could already do that but when I went looking
> > for the standard --recursive option I couldn't find it.
>
> Thanks for checking for submodules there.
>
> I personally prefer --recurse-submodules despi
On Fri, 22 Sep 2017 20:26:19 +
Jeff Hostetler wrote:
> This draft contains filters to:
> () omit all blobs
> () omit blobs larger than some size
> () omit blobs using a sparse-checkout specification
>
> In addition to specifying the filter criteria, the rev-list command
> was updated to incl
On 22 September 2017 at 14:04, Michael J Gruber wrote:
> From: Michael J Gruber
>
> git-merge does not honor the pre-commit hook when doing automatic merge
> commits, and for compatibility reasons this is going to stay.
>
> Introduce a pre-merge hook which is called for an automatic merge commit
On 22 September 2017 at 18:35, Ben Peart wrote:
> Add a test utility (test-dump-fsmonitor) that will dump the fsmonitor
> index extension.
>
> Signed-off-by: Ben Peart
> ---
> Makefile | 1 +
> t/helper/test-dump-fsmonitor.c | 21 +
> 2 files changed, 2
On 22 September 2017 at 18:35, Ben Peart wrote:
> Add a new get_be64 macro to enable 64 bit endian conversions on memory
> that may or may not be aligned.
I needed this to compile and pass the tests with NO_UNALIGNED_LOADS.
Martin
diff --git a/compat/bswap.h b/compat/bswap.h
index 6b22c4621..9d
Instead of setting the fields of rev->pending to 0/NULL, thereby leaking
memory, call `object_array_clear(&rev->pending)`.
In pack-bitmap.c, we make copies of those fields as `pending_nr` and
`pending_e`. We never update the aliases and the original fields never
change, so the aliases are not real
Setting `leak_pending = 1` tells `prepare_revision_walk()` not to
release the `pending` array, and makes that the caller's responsibility.
See 4a43d374f (revision: add leak_pending flag, 2011-10-01) and
353f5657a (bisect: use leak_pending flag, 2011-10-01).
Commit 1da1e07c8 (clean up name allocati
In a couple of places, we pop objects off an object array `foo` by
decreasing `foo.nr`. We access `foo.nr` in many places, but most if not
all other times we do so read-only, e.g., as we iterate over the array.
But when we change `foo.nr` behind the array's back, it feels a bit
nasty and looks like
Instead of freeing `foo.objects` for an object array `foo` (sometimes
conditionally), call `object_array_clear(&foo)`. This means we don't
poke as much into the implementation, which is already a good thing, but
also that we release the individual entries as well, thereby fixing at
least one memory
Release `pathspec` and the string list `partial`.
When we clear the string list, make sure we do not free the `util`
pointers. That would result in double-freeing, since we set them up as
`item->util = item` in `list_paths()`.
Initialize the string list early, so that we can always release it. Th
On 20 September 2017 at 22:02, Jeff King wrote:
> On Wed, Sep 20, 2017 at 09:47:24PM +0200, Martin Ågren wrote:
>
>> Instead of conditionally freeing `rev.pending.objects`, just call
>> `object_array_clear()` on `rev.pending`. This means we don't poke as
>> much into the implementation, which is a
We don't free the temporary scratch space we use with
`remove_redundant()`. Free it similar to how we do it in
`get_merge_bases_many_0()`.
Signed-off-by: Martin Ågren
Reviewed-by: Jeff King
Signed-off-by: Junio C Hamano
---
commit.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/commit.c
Stefan Beller wrote:
> Reported-by: Lars Schneider
> Signed-off-by: Stefan Beller
> ---
> Documentation/config.txt | 12
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> Jonathan writes:
>> You'll want to update Documentation/gitmodules.txt, too.
>
> No. /grumpycat
>
> It sho
On Fri, 22 Sep 2017 17:32:00 -0400
Jeff Hostetler wrote:
> I guess I'm afraid that the first call to is_promised() is going
> cause a very long pause as it loads up a very large hash of objects.
Yes, the first call will cause a long pause. (I think fsck and gc can
tolerate this, but a better sol
With more commands (that potentially change a submodule) paying attention
to submodules as well as the recent discussion[1] on
submodule..update, let's spell out that submodule..update
is strictly to be used for configuring the "submodule update" command
and not to be obeyed by other commands.
The
On Fri, 22 Sep 2017 17:19:50 -0400
Jeff Hostetler wrote:
> > In your specific example, how would rev-list know, on the client, to
> > include (or exclude) a large blob in its output if it does not have it,
> > and thus does not know its size?
> >
>
> The client doesn't have the size. It just kn
On Fri, 22 Sep 2017 17:02:11 -0400
Jeff Hostetler wrote:
> > I was struggling a bit with the terminology, true.
> >
> > Right now I'm thinking of:
> > - promisor remote (as you defined)
> > - promisor packfile (as you defined)
> > - promisor object is an object known to belong to the promi
On Fri, 22 Sep 2017 14:01:04 -0700
Brandon Williams wrote:
> > +static void process_capabilities(int len)
> > +{
> > + int nul_location = strlen(packet_buffer);
>
> It may make more sense to not rely on accessing a global buffer here
> directly and instead pass in the buff you're working on, m
On Fri, Sep 22, 2017 at 2:25 PM, Jeff King wrote:
> On Fri, Sep 22, 2017 at 01:09:32PM -0700, Stefan Beller wrote:
>
>> On Thu, Sep 21, 2017 at 9:25 PM, Jeff King wrote:
>>
>> >
>> > But imagine that "git status" learns to recurse into submodules and run
>> > "git status" inside them. Surely we w
Hi,
Stefan Beller wrote:
> With more commands (that potentially change a submodule) paying attention
> to submodules as well as the recent discussion[1] on submodule..update,
> let's spell out that submodule..update is strictly to be used
> for configuring the "submodule update" command and not t
On 9/21/2017 7:04 PM, Jonathan Tan wrote:
On Thu, 21 Sep 2017 14:00:40 -0400
Jeff Hostetler wrote:
(part 3)
Additional overall comments on:
https://github.com/jonathantanmy/git/commits/partialclone2
{} WRT the code in is_promised() [1]
[1]
https://github.com/jonathantanmy/git/commit/7a9c2
With more commands (that potentially change a submodule) paying attention
to submodules as well as the recent discussion[1] on submodule..update,
let's spell out that submodule..update is strictly to be used
for configuring the "submodule update" command and not to be obeyed
by other commands.
The
On Fri, Sep 22, 2017 at 01:09:32PM -0700, Stefan Beller wrote:
> On Thu, Sep 21, 2017 at 9:25 PM, Jeff King wrote:
>
> >
> > But imagine that "git status" learns to recurse into submodules and run
> > "git status" inside them. Surely we would want the submodule repos to
> > also avoid taking any
On 9/21/2017 6:51 PM, Jonathan Tan wrote:
On Thu, 21 Sep 2017 13:59:43 -0400
Jeff Hostetler wrote:
(part 2)
Additional overall comments on:
https://github.com/jonathantanmy/git/commits/partialclone2
{} I think it would help to split the blob-max-bytes filtering and the
promisor/promis
There is a transaction proposal attached to your name with ID:
git@vger.kernel.org in this office, you are please advised to respond for more
details.
Thank You.
Fawaz Al Saleh
On 9/21/2017 6:42 PM, Jonathan Tan wrote:
On Thu, 21 Sep 2017 13:57:30 -0400
Jeff Hostetler wrote:
There's a lot in this patch series. I'm still studying it, but here
are some notes and questions. I'll start with direct responses to
the RFC here and follow up in a second email with specifi
On 09/22, Jonathan Tan wrote:
> Currently, get_remote_heads() parses the ref advertisement in one loop,
> allowing refs and shallow lines to intersperse, despite this not being
> allowed by the specification. Refactor get_remote_heads() to use two
> loops instead, enforcing that refs come first, an
On 09/22, Jeff Hostetler wrote:
> From: Jeff Hostetler
>
> Create subclass of oidset where each entry has a
> field to store the length of the object's content
> and an optional pathname.
>
> This will be used in a future commit to build a
> manifest of omitted objects in a partial/narrow
> clon
From: Jeff Hostetler
Signed-off-by: Jeff Hostetler
---
t/t6112-rev-list-filters-objects.sh | 237
1 file changed, 237 insertions(+)
create mode 100755 t/t6112-rev-list-filters-objects.sh
diff --git a/t/t6112-rev-list-filters-objects.sh
b/t/t6112-rev-list-
From: Jeff Hostetler
Add help text for new object filtering options to
pack-objects documentation.
Signed-off-by: Jeff Hostetler
---
Documentation/git-pack-objects.txt | 17 +
1 file changed, 17 insertions(+)
diff --git a/Documentation/git-pack-objects.txt
b/Documentation/git
From: Jeff Hostetler
Teach pack-objects to use the filtering provided by the
traverse_commit_list_filtered() interface to omit unwanted
objects from the resulting packfile.
This feature is intended for partial clone/fetch.
Filtering requires the use of the "--stdout" option.
Signed-off-by: Jef
From: Jeff Hostetler
Teach rev-list to use the filtering provided by the
traverse_commit_list_filtered() interface to omit
unwanted objects from the result.
This feature is only enabled when one of the "--objects*"
options are used.
When the "--filter-print-manifest" option is used, the
omitted
From: Jeff Hostetler
Signed-off-by: Jeff Hostetler
---
Documentation/git-rev-list.txt | 9 -
Documentation/rev-list-options.txt | 32
2 files changed, 40 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-rev-list.txt b/Documentation/git-r
From: Jeff Hostetler
Add traverse_commit_list_filtered() wrapper around the various
filter methods using common data in object_filter_options.
Signed-off-by: Jeff Hostetler
---
list-objects.c | 34 ++
list-objects.h | 11 +++
2 files changed, 45 insertio
From: Jeff Hostetler
Create a filter for traverse_commit_list_worker() to omit blobs
larger than a requested size from the result, but always include
".git*" special files.
Signed-off-by: Jeff Hostetler @microsoft.com>
---
Makefile| 1 +
list-objects-filter-large.c | 108 +
From: Jeff Hostetler
Create common routines and defines for parsing
object-filter-related command line arguments and
pack-protocol fields.
Signed-off-by: Jeff Hostetler
---
Makefile| 1 +
object-filter.c | 269
object-filter.h
From: Jeff Hostetler
Create a filter for traverse_commit_list_worker() to only include
the blobs the would be referenced by a sparse-checkout using the
given specification.
A future enhancement should be able to also omit unneeded tree
objects, but that is not currently supported.
Signed-off-by
From: Jeff Hostetler
This patch series contains WIP code demonstrating object (blob) filtering
in rev-list and pack-objects using a common filtering API in
list-objects and traverse-commit-list that allows both commands
to perform the same type of filter operations. And serve as the
basis of pa
From: Jeff Hostetler
Refactor add_excludes() to separate the reading of the
exclude file into a buffer and the parsing of the buffer
into exclude_list items.
Add add_excludes_from_blob_to_list() to allow an exclude
file be specified with an OID.
Signed-off-by: Jeff Hostetler
---
dir.c | 53 ++
From: Jeff Hostetler
Create subclass of oidset where each entry has a
field to store the length of the object's content
and an optional pathname.
This will be used in a future commit to build a
manifest of omitted objects in a partial/narrow
clone/fetch.
Signed-off-by: Jeff Hostetler
---
Make
From: Jeff Hostetler
Create traverse_commit_list_filtered() and add filtering
interface to allow certain objects to be omitted (not shown)
during a traversal.
Update traverse_commit_list() to be a wrapper for the above.
Filtering will be used in a future commit by rev-list and
pack-objects for
From: Jeff Hostetler
Create a simple filter for traverse_commit_list_worker() to omit
all blobs from the result.
This filter will be used in a future commit by rev-list and pack-objects
to create a "commits and trees" result. This is intended for partial
clone and fetch support.
Signed-off-by:
Currently, get_remote_heads() parses the ref advertisement in one loop,
allowing refs and shallow lines to intersperse, despite this not being
allowed by the specification. Refactor get_remote_heads() to use two
loops instead, enforcing that refs come first, and then shallows.
This also makes it e
On Thu, Sep 21, 2017 at 9:25 PM, Jeff King wrote:
>
> But imagine that "git status" learns to recurse into submodules and run
> "git status" inside them. Surely we would want the submodule repos to
> also avoid taking any unnecessary locks?
You can teach Git to recurse into submodules already at
On Fri, Sep 22, 2017 at 5:04 AM, Michael J Gruber wrote:
> --- a/t/t7503-pre-commit-hook.sh
> +++ b/t/t7503-pre-commit-hook.sh
> -test_description='pre-commit hook'
> +test_description='pre-commit and pre-merge hooks'
Tangent: do we also want to rename the file?
> +test_expect_success '--no-ve
On Fri, Sep 22, 2017 at 5:04 AM, Michael J Gruber wrote:
> f8b863598c ("builtin/merge: honor commit-msg hook for merges", 2017-09-07)
> introduced the no-verify to merge for bypassing the commit-msg hook,
> though in a different way from the implementation in commit.c.
>
> Change the implementatio
On Fri, Sep 22, 2017 at 5:04 AM, Michael J Gruber wrote:
> From: Michael J Gruber
>
> git-merge does not honor the pre-commit hook when doing automatic merge
> commits, and for compatibility reasons this is going to stay.
>
> Introduce a pre-merge hook which is called for an automatic merge commi
On 22/09/17 17:25, SZEDER Gábor wrote:
>
> At first I was somewhat puzzled by the "ALLOC_GROW:" prefix in the
> subject line, because this patch doesn't touch ALLOC_GROW() at all.
> However, since ALLOC_GROW() is a macro, of course, and since this
> patch changes the data type of variables "pass
Am 22.09.2017 um 07:47 schrieb Jeff King:
> On Thu, Sep 21, 2017 at 05:48:38PM +0100, Ramsay Jones wrote:
>
>> diff --git a/cache.h b/cache.h
>> index a916bc79e..a0e3e362c 100644
>> --- a/cache.h
>> +++ b/cache.h
>> @@ -1243,8 +1243,8 @@ static inline unsigned int hexval(unsigned char c)
>>*/
On 09/22, Junio C Hamano wrote:
> Junio C Hamano writes:
>
> > Jonathan Tan writes:
> >
> >> Currently, get_remote_heads() parses the ref advertisement in one loop,
> >> allowing refs and shallow lines to intersperse, despite this not being
> >> allowed by the specification. Refactor get_remote_
Add support in update-index to manually add/remove the fsmonitor
extension via --[no-]fsmonitor flags.
Add support in update-index to manually set/clear the fsmonitor
valid bit via --[no-]fsmonitor-valid flags.
Signed-off-by: Ben Peart
---
builtin/update-index.c | 33 +++
Add a test utility (test-dump-fsmonitor) that will dump the fsmonitor
index extension.
Signed-off-by: Ben Peart
---
Makefile | 1 +
t/helper/test-dump-fsmonitor.c | 21 +
2 files changed, 22 insertions(+)
create mode 100644 t/helper/test-dump-fsmonitor
When the index is read from disk, the fsmonitor index extension is used
to flag the last known potentially dirty index entries. The registered
core.fsmonitor command is called with the time the index was last
updated and returns the list of files changed since that time. This list
is used to flag a
This script integrates the new fsmonitor capabilities of git with the
cross platform Watchman file watching service. To use the script:
Download and install Watchman from https://facebook.github.io/watchman/.
Rename the sample integration hook from fsmonitor-watchman.sample to
fsmonitor-watchman.
Add a new command line option (-f) to ls-files to have it use lowercase
letters for 'fsmonitor valid' files
Signed-off-by: Ben Peart
---
builtin/ls-files.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/builtin/ls-files.c b/builtin/ls-files.c
index e1339e6d17..313962
Test the ability to add/remove the fsmonitor index extension via
update-index.
Test that dirty files returned from the integration script are properly
represented in the index extension and verify that ls-files correctly
reports their state.
Test that ensure status results are correct when using
The split index test t1700-split-index.sh has hard coded SHA values for
the index. Currently it supports index V4 and V3 but assumes there are
no index extensions loaded.
When manually forcing the fsmonitor extension to be turned on when
running the test suite, the SHA values no longer match whic
This includes the core.fsmonitor setting, the fsmonitor integration hook,
and the fsmonitor index extension.
Also add documentation for the new fsmonitor options to ls-files and
update-index.
Signed-off-by: Ben Peart
---
Documentation/config.txt | 7 +
Documentation/git-ls-
Add a test utility (test-drop-caches) that flushes all changes to disk
then drops file system cache on Windows, Linux, and OSX.
Add a perf test (p7519-fsmonitor.sh) for fsmonitor.
By default, the performance test will utilize the Watchman file system
monitor if it is installed. If Watchman is no
At times, it makes sense to avoid the cost of writing out the index
when the only changes can easily be recomputed on demand. This causes
problems when trying to write test cases to verify that state as they
can't guarantee the state has been persisted to disk.
Add a new option (--force-write-inde
Thanks again to everyone who provided feedback. There are several
spelling, documentation, and code comment changes.
The only behavioral change from V7 is the removal of unnecessary uses of
CE_MATCH_IGNORE_FSMONITOR. With a better understanding of *why* the
CE_MATCH_IGNORE_* flags are used, it i
Add a new get_be64 macro to enable 64 bit endian conversions on memory
that may or may not be aligned.
Signed-off-by: Ben Peart
---
compat/bswap.h | 22 ++
1 file changed, 22 insertions(+)
diff --git a/compat/bswap.h b/compat/bswap.h
index 7d063e9e40..6b22c46214 100644
--- a
By default, the preload index code path doesn't run unless there is a
minimum of 1000 files. To enable running the test suite and having it
execute the preload-index path, add an environment variable
(GIT_FORCE_PRELOAD_TEST) which will override that minimum and set it to 2.
This enables you run ex
On 09/22, Junio C Hamano wrote:
> When creating a new branch B by copying the branch A that happens to
> be the current branch, it also updates HEAD to point at the new
> branch. It probably was made this way because "git branch -c A B"
> piggybacked its implementation on "git branch -m A B",
>
>
At first I was somewhat puzzled by the "ALLOC_GROW:" prefix in the
subject line, because this patch doesn't touch ALLOC_GROW() at all.
However, since ALLOC_GROW() is a macro, of course, and since this
patch changes the data type of variables "passed" to ALLOC_GROW(),
that's sort of fine...
But th
On 22/09/17 17:11, Jeff King wrote:
> On Fri, Sep 22, 2017 at 05:05:03PM +0100, Ramsay Jones wrote:
>
>>> As an aside, I also see some uses of hexval() that don't appear to be
>>> quite as rigorous in checking for invalid characters. A few
>>> unconditionally shift the first nibble and assume th
On Fri, Sep 22, 2017 at 12:18:17PM -0400, Jeff King wrote:
> > I think if this function is fed an empty string that it will also read
> > past the end of the buffer for in[1]. It shouldn't matter, since the NUL
> > in in[0] would cause us to return an error regardless, but it's still
> > undefined
On Fri, Sep 22, 2017 at 12:11:59PM -0400, Jeff King wrote:
> On Fri, Sep 22, 2017 at 05:05:03PM +0100, Ramsay Jones wrote:
>
> > > As an aside, I also see some uses of hexval() that don't appear to be
> > > quite as rigorous in checking for invalid characters. A few
> > > unconditionally shift th
On Fri, Sep 22, 2017 at 05:05:03PM +0100, Ramsay Jones wrote:
> > As an aside, I also see some uses of hexval() that don't appear to be
> > quite as rigorous in checking for invalid characters. A few
> > unconditionally shift the first nibble and assume that there will still
> > be high bits set.
On 22/09/17 06:47, Jeff King wrote:
> On Thu, Sep 21, 2017 at 05:48:38PM +0100, Ramsay Jones wrote:
>
>> diff --git a/cache.h b/cache.h
>> index a916bc79e..a0e3e362c 100644
>> --- a/cache.h
>> +++ b/cache.h
>> @@ -1243,8 +1243,8 @@ static inline unsigned int hexval(unsigned char c)
>> */
>> s
On Fri, Sep 22, 2017 at 01:42:10AM -0500, Daniel Santos wrote:
> > But taking the index lock may conflict with other operations
> > in the repository. Especially ones that the user is doing
> > themselves, which _aren't_ opportunistic. In other words,
> > "git status" knows how to back off when so
On Fri, Sep 22, 2017 at 04:46:48PM +0100, Ramsay Jones wrote:
> >> - int nth_slab, nth_slot; \
> >> + unsigned int nth_slab, nth_slot;\
> >
> > I have a feeling that in the long run these should all be size_t, but
> > it's
On 22/09/17 06:29, Jeff King wrote:
> On Thu, Sep 21, 2017 at 05:47:36PM +0100, Ramsay Jones wrote:
>
>> diff --git a/commit-slab.h b/commit-slab.h
>> index 333d81e37..dcaab8ca0 100644
>> --- a/commit-slab.h
>> +++ b/commit-slab.h
>> @@ -78,7 +78,7 @@ static MAYBE_UNUSED void init_ ##slabname(st
On 22/09/17 05:20, Junio C Hamano wrote:
>> diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c
>> index a57b4f058..a6ee653bf 100644
>> --- a/builtin/pack-objects.c
>> +++ b/builtin/pack-objects.c
>> @@ -2563,8 +2563,8 @@ struct in_pack_object {
>> };
>>
>> struct in_pack {
>> -i
On Fri, Sep 22, 2017 at 07:22:28AM -0400, Jeff Hostetler wrote:
> > > I don't think we should pass this environment variable to remote
> > > repositories. It should be listed in local_repo_env[] in environment.c.
> >
> > I'm not sure I agree. This is really about the context in which the
> > comm
"In einer kurzen Einleitung,
Ich bin ein Anwalt Meinze Klaus peter, aus Deutschland, ich lebe
Zurzeit in London, schickte ich Ihnen eine E-Mail über Ihren
Verstorbenen Familienmitglied Spätfamilie, ich habe keine Antwort von
Ihnen erhalten verstorben ist ein Bürger in deinem Land mit dem
gleichen
From: Michael J Gruber
Add tests which make sure that the pre-merge-hook is called when
present, allows/disallows merge commits depending on its return value
and is suppressed by "--no-verify".
Signed-off-by: Michael J Gruber
---
t/t7503-pre-commit-hook.sh | 66
Now that f8b863598c ("builtin/merge: honor commit-msg hook for merges",
2017-09-07) has landed, merge is getting closer to behaving like commit,
which is important because both are used to complete merges (automatic
vs. non-automatic).
This series revives an old suggestion of mine to make merge ho
From: Michael J Gruber
Analogous to commit, introduce a '--no-verify' option which bypasses the
pre-merge hook. The shorthand '-n' is taken by the (non-existing)
'--no-stat' already.
Signed-off-by: Michael J Gruber
---
Documentation/git-merge.txt | 2 +-
Documentation/githooks.txt | 2
From: Michael J Gruber
git-merge does not honor the pre-commit hook when doing automatic merge
commits, and for compatibility reasons this is going to stay.
Introduce a pre-merge hook which is called for an automatic merge commit
just like pre-commit is called for a non-automatic merge commit (o
f8b863598c ("builtin/merge: honor commit-msg hook for merges", 2017-09-07)
introduced the no-verify to merge for bypassing the commit-msg hook,
though in a different way from the implementation in commit.c.
Change the implementation in merge.c to be the same as in merge.c so
that both do the same
<>
On 9/22/2017 12:25 AM, Jeff King wrote:
On Thu, Sep 21, 2017 at 08:25:50PM +0200, Johannes Sixt wrote:
+`GIT_OPTIONAL_LOCKS`::
+ If set to `0`, Git will avoid performing any operations which
+ require taking a lock and which are not required to complete the
+ requested opera
--
Dear sir
i hope this is your direct email address for easy communicaton, i will be
glad if you could comfirm it in acknowledgement. i have important matter
to discuss with you.
yours Sincerely
Rachael
--
Lieber Herr
Ich hoffe das ist Ihre direkte E-
Michael J Gruber writes:
> I'm still trying to understand what the original intent was: If we
> abstract from the implementation (as we should, as you rightly
> emphasize) and talk about historical tips then we have to ask ourselves:
> - What is "historical"?
> - What is tip?
> - Tip of what, i.e
Ian Campbell writes:
> Travis is happy and the dt reconvert looks sensible (only took 60 hours
> ;-)).
Good.
> Don't know if this is useful to your workflow but:
>
> The following changes since commit 4384e3cde2ce8ecd194202e171ae16333d241326:
>
> Git 2.14 (2017-08-04 09:31:12 -0700)
>
> are a
£1.5 Million Has Been Granted To You As A Donation Visit
www.bbc.co.uk/news/uk-england-19254228 Sendname Address Phone for more info
On Fri, 2017-09-22 at 13:42 +0900, Junio C Hamano wrote:
> Ian Campbell writes:
>
> > This is the third version of my patches to add incremental support to
> > git-filter-branch. Since the last time I have replaced `git mktag --
> > allow-missing-tagger` with `git hash-object -t tag -w --stdin`.
Junio C Hamano venit, vidit, dixit 22.09.2017 03:49:
> Michael J Gruber writes:
>
>> Also, I'm undecided about about your reflog argument above - if we leave
>> "--fork-point" to be the current behaviour including Jeff's fix then the
>> documentation would need an even bigger overhaul, because it
97 matches
Mail list logo