On Wed, Apr 6, 2016 at 6:02 PM, Junio C Hamano wrote:
> Antti Halttunen writes:
>
>> Starting with git v2.7.0,
>>
>> submodules two levels deep get a .git contents of:
>> gitdir: /absolute/path/name
>
> I think that this is $gmane/290491
>
> http://thread.gmane.org/gmane.comp.version-control.git
Am 07.04.2016 um 00:11 schrieb David Turner:
+static void share_index(struct index_state *istate, struct shm *is)
+{
+ void *new_mmap;
+ if (istate->mmap_size <= 20 ||
+ hashcmp(istate->sha1,
+ (unsigned char *)istate->mmap + istate->mmap_size - 20) ||
+
Hi, this is Jeff Wu from China.
We are a factory which produces pet clothes, pet harness, pet leash.
Please let me know if you are interested to buy from us, thanks!
I will send the price lists and website to you then.
Best regards,
Jeff Wu
--
To unsubscribe from this list: send the line "unsubsc
On Thu, Apr 07, 2016 at 12:42:19AM -0400, Jeff King wrote:
> On Wed, Apr 06, 2016 at 06:15:03PM +0100, Adam Dinwoodie wrote:
>
> > `git commit --amend -m ''` seems to be an unambiguous request to blank a
> > commit message, but it actually leaves the commit message as-is. That's
> > the case reg
On Wed, Apr 06, 2016 at 06:15:03PM +0100, Adam Dinwoodie wrote:
> `git commit --amend -m ''` seems to be an unambiguous request to blank a
> commit message, but it actually leaves the commit message as-is. That's
> the case regardless of whether `--allow-empty-message` is specified, and
> doesn't
> > v5 (this):
> > Added helpful feedback by Eric
> >
> > * Reordering of the patches, to avoid temporal inclusion of a regression
> > * Fix typos here and there.
> > * Review commit messages, as some weren't representative of what the
> > patches
> >were doing anymore.
> > * Updated t7030
> > type = sha1_object_info(sha1, NULL);
> > if (type != OBJ_TAG)
> > return error("%s: cannot verify a non-tag object of type %s.",
> > - name, typename(type));
> > + hex_sha1, typename(type));
>
> So, if I said
>
> $ gi
Thanks for the reviews!
I'll update the commit messages. It appears that I there's a lot to
learn on my side on the art of writing good commit messages.
-Santiago.
On Wed, Apr 06, 2016 at 09:39:39AM -0700, Junio C Hamano wrote:
> The first three looked almost good. I do not fully agree with wha
Cameron Currie cameroncurrie.net> writes:
> This is helpful for folks with commit.gpgsign = true in their .gitconfig.
> https://github.com/git/git/pull/186
I too would like this.
Bumping due to lack of attention.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a
On Wed, Apr 6, 2016 at 3:30 PM, Michael S. Tsirkin wrote:
> On Wed, Apr 06, 2016 at 10:42:42AM -0700, Junio C Hamano wrote:
>> "Michael S. Tsirkin" writes:
>>
>> > On Wed, Apr 06, 2016 at 06:58:30PM +0200, Matthieu Moy wrote:
>> >> "Michael S. Tsirkin" writes:
>> >>
>> >> > I have this in .git/c
The merge() helper function is given an existing rerere ID (i.e. the
name of the .git/rr-cache/* subdirectory, and the variant number)
that identifies one pair, try to see if the
conflicted state in the given path can be resolved by using the pair,
and if this succeeds, then update the conflicted
This enables the multiple-variant support for real. Multiple
conflicts of the same shape can have differences in contexts where
they appear, interfering the replaying of recorded resolution of one
conflict to another, and in such a case, their resolutions are
recorded as different variants under t
Because conflicts with the same contents inside conflict blocks
enclosed by "<<<" and ">>>" can now have multiple variants
to help three-way merge to adjust to the differences outside the
conflict blocks, "rerere forget $path" needs to be taught that there
may be multiple recorded resolutio
If by some accident there is only $GIT_DIR/rr-cache/$ID directory
existed, we wouldn't have recorded a preimage for a conflict that
is newly encountered, which would mean after a manual resolution,
we wouldn't have recorded it by storing the postimage, because the
logic used to be "if there is no r
We record the preimage only when there is no directory to record the
conflict we encountered, i.e. when $GIT_DIR/rr-cache/$ID does not
exist. As the plan is to allow multiple pairs
as variants for the same conflict ID eventually, this logic needs to
go.
As the first step in that direction, stop
Adjust "git rerere gc" and "git rerere clear" to the new world order
with rerere database with multiple variants for the same shape of
conflicts.
Signed-off-by: Junio C Hamano
---
rerere.c | 87 ++-
t/t4200-rerere.sh | 81 +
When the context of multiple identical conflicts are different, two
seemingly the same conflict resolution cannot be safely applied.
In such a case, at least we should be able to record these two
resolutions separately in the rerere database, and reuse them when
we see the same conflict later.
Si
"rerere forget" is the only user of handle_cache() helper, which in
turn is the only user of rerere_io that reads from an in-core buffer
whose getline method is implemented as rerere_mem_getline(). Gather
them together.
Signed-off-by: Junio C Hamano
---
rerere.c | 194 ++
The shape of the conflict in a path determines the conflict ID. The
preimage and postimage pair that was recorded for the conflict ID
previously may or may not replay well for the conflict we just saw.
Currently, we punt when the previous resolution does not cleanly
replay, but ideally we should
This adds only finishing touches compared to the previous one, which
starts at the message this is a response to and is found at
http://thread.gmane.org/gmane.comp.version-control.git/290068.
Namely, the last patch is different in that it not just adjusts
'forget', but also has a new test for 'rer
This will help fixing bootstrap corner-case issues, e.g. having an
empty $GIT_DIR/rr-cache/$ID directory would fail to record a
preimage, in later changes in this series.
Signed-off-by: Junio C Hamano
---
rerere.c | 32 +---
1 file changed, 29 insertions(+), 3 deletio
The plan is to keep assigning the backward compatible conflict ID
based on the hash of the (normalized) text of conflicts, keep using
that conflict ID as the directory name under $GIT_DIR/rr-cache/, but
allow each conflicted path to use a separate "variant" to record
resolutions, i.e. having more t
From: Nguyễn Thái Ngọc Duy
This allows signal handlers and atexit functions to realize this
situation and not clean up.
Signed-off-by: Nguyễn Thái Ngọc Duy
---
builtin/gc.c | 2 +-
cache.h | 2 +-
daemon.c | 2 +-
setup.c | 4 +++-
4 files changed, 6 insertions(+), 4 deletions(-)
When we poke index-helper, and index-helper is using watchman, we want
to wait for a response (showing that the watchman extension shm has
been prepared). If it's not using watchman, we don't.
So add a new config, core.waitforindexhelper, with sensible defaults, to
configure this behavior.
Signe
From: Nguyễn Thái Ngọc Duy
Watchman is hidden behind index-helper. Before git tries to read the
index from shm, it notifies index-helper through the socket and
waits for index-helper to prepare shm. index-helper then contacts
watchman, updates 'WAMA' extension and put it in a separate shm and
wak
Introduce a new config option, indexhelper.autorun, to automatically
run git index-helper before starting up a builtin git command. This
enables users to keep index-helper running without manual
intervention.
Signed-off-by: David Turner
---
Documentation/config.txt | 4
git.c
Soon, we'll want to automatically start index-helper, so we need
a mode that silently exits if it can't start up (either because
it's not in a git dir, or because another one is already running).
Signed-off-by: David Turner
---
index-helper.c | 29 +++--
t/t7900-
Make git checkout (and other unpack_tree operations) preserve the
untracked cache and watchman status. This is valuable for two reasons:
1. Often, an unpack_tree operation will not touch large parts of the
working tree, and thus most of the untracked cache will continue to be
valid.
2. Even if th
Signed-off-by: David Turner
---
index-helper.c | 7 +++
t/t7900-index-helper.sh | 9 +
2 files changed, 16 insertions(+)
diff --git a/index-helper.c b/index-helper.c
index a3f6a74..b62d805 100644
--- a/index-helper.c
+++ b/index-helper.c
@@ -413,6 +413,13 @@ int main(int arg
Add a new command (and command-line arg) to allow index-helpers to
exit cleanly.
This is mainly useful for tests.
Signed-off-by: David Turner
---
index-helper.c | 31 ++-
t/t7900-index-helper.sh | 13 +
2 files changed, 43 insertions(+), 1 deleti
From: Nguyễn Thái Ngọc Duy
There are "holes" in the index-helper approach because the shared
memory is not verified again by git. If $USER is compromised, shared
memory could be modified. But anyone who could do this could already
modify $GIT_DIR/index. A more realistic risk is some bugs in
index
From: Nguyễn Thái Ngọc Duy
The previous patch has the logic to clear bits in 'WAMA' bitmap. This
patch has logic to set bits as told by watchman. The missing bit,
_using_ these bits, are not here yet.
A lot of this code is written by David Turner originally, mostly from
[1]. I'm just copying and
From: Nguyễn Thái Ngọc Duy
The extension contains a bitmap, one bit for each entry in the
index. If the n-th bit is zero, the n-th entry is considered
unchanged, we can ce_mark_uptodate() it without refreshing. If the bit
is non-zero and we found out the corresponding file is clean after
refresh,
From: Nguyễn Thái Ngọc Duy
Signed-off-by: Nguyễn Thái Ngọc Duy
---
builtin/update-index.c | 11 +++
1 file changed, 11 insertions(+)
diff --git a/builtin/update-index.c b/builtin/update-index.c
index 1c94ca5..7c08e1c 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -
From: Nguyễn Thái Ngọc Duy
We detach after creating and opening the socket, because otherwise
we might return control to the shell before index-helper is ready to
accept commands. This might lead to flaky tests.
Signed-off-by: Nguyễn Thái Ngọc Duy
---
Documentation/git-index-helper.txt | 3 +
The major change here is to switch from named pipes to sockets. But somehow
while doing this, I noticed a few other things (and others noticed some too):
Fixed bugs in successful write testing
Added a bit more doco
Improved tests slightly
Memory barriers
.git vs .git/ from watchman
one patch move
From: Nguyễn Thái Ngọc Duy
Later, we will introduce git index-helper to share this memory with
other git processes.
Since the memory will be shared, it will never be unmapped (although
the kernel may of course choose to page it out).
Signed-off-by: Nguyễn Thái Ngọc Duy
---
cache.h | 3 +
From: Nguyễn Thái Ngọc Duy
Instead of reading the index from disk and worrying about disk
corruption, the index is cached in memory (memory bit-flips happen
too, but hopefully less often). The result is faster read. Read time
is reduced by 70%.
The biggest gain is not having to verify the traili
From: Nguyễn Thái Ngọc Duy
Signed-off-by: Nguyễn Thái Ngọc Duy
---
read-cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/read-cache.c b/read-cache.c
index d9fb78b..16cc487 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -1345,7 +1345,7 @@ struct ondisk_cache_entry_ext
Junio C Hamano wrote:
> Sidhant Sharma writes:
>
> > Recently while playing around with git log, I realized that it is possible
> > to
> > pass incomplete (pre-defined) format names. For example, it is possible to
> > use
> > `git log --pretty=one` instead of oneline and it would still output
Eric Wong wrote:
> We never used Data::Dumper in this script. The only reference
> of it was always commented out and removed over a decade ago in
> commit 4bc87a28be020a6bf7387161c65ea3d8e4a0228b
> ("send-email: Change from Mail::Sendmail to Net::SMTP")
>
> Signed-off-by: Eric Wong
> ---
> Whi
On Wed, Apr 6, 2016 at 2:03 PM, Eric Wong wrote:
>> which was slightly tightend by aacd404e (Fix some
>> documentation typos and grammar, 2007-02-02).
>
> Huh?
Huh indeed.
b6936205 (Disallow invalid --pretty= abbreviations, 2007-02-02)
was what I meant to name.
--
To unsubscribe from this list:
We never used Data::Dumper in this script. The only reference
of it was always commented out and removed over a decade ago in
commit 4bc87a28be020a6bf7387161c65ea3d8e4a0228b
("send-email: Change from Mail::Sendmail to Net::SMTP")
Signed-off-by: Eric Wong
---
While I'm in the area...
git-send-
Using a mmddHHMMSS date representation is more meaningful to
humans, especially when used for lookups on NNTP servers or linking
to archive sites via Message-ID (e.g. mid.gmane.org or
mid.mail-archive.com). This timestamp format more easily gives a
reader of the URL itself a rough date of a li
elena petrashen wrote:
> On Tue, Apr 5, 2016 at 12:53 AM, Remi Galan Alfonso
> wrote:
> > elena petrashen wrote:
> >> On Thu, Mar 31, 2016 at 6:31 PM, Remi Galan Alfonso
> >> wrote:
> >> > Elena Petrashen wrote:
> >> >> +void delete_branch_advice(const char *name, const char *ref)
> >> >> +{
>
On Wed, Apr 06, 2016 at 10:42:42AM -0700, Junio C Hamano wrote:
> "Michael S. Tsirkin" writes:
>
> > On Wed, Apr 06, 2016 at 06:58:30PM +0200, Matthieu Moy wrote:
> >> "Michael S. Tsirkin" writes:
> >>
> >> > I have this in .git/config
> >> >
> >> > [trailer "r"]
> >> > key = Reviewed-b
Linus Torvalds writes:
> ... And I guess it might not be too nasty
> to add: it could be done as part of the object checking pass after
> downloading the pack. Was that what you were thinking of?
Not that fancy, actually. Running an equivalent of
git rev-list --max-parents=0 ^HEAD FETCH_HE
If an explicit -t trailer is used, only parse
trailers from command line.
Signed-off-by: Michael S. Tsirkin
---
trailer.c | 12
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/trailer.c b/trailer.c
index 8e5be91..34654fc 100644
--- a/trailer.c
+++ b/trailer.c
@@ -676,1
On Wed, Apr 6, 2016 at 11:36 AM, Junio C Hamano wrote:
>
> I was reviewing the topics to merge to 'master', and a thought
> crossed my mind. Both of our series only refuse to create a merge
> that does not have any common ancestor, but shouldn't the right
> solution refuse to add a new root?
So
Linus Torvalds writes:
> On Fri, Mar 18, 2016 at 1:21 PM, Junio C Hamano wrote:
>> While it makes sense to allow merging unrelated histories of two
>> projects that started independently into one, in the way "gitk" was
>> merged to "git" itself aka "the coolest merge ever", such a merge is
>> st
On Thu, Mar 31, 2016 at 6:47 AM, Jeff King wrote:
> On Wed, Mar 30, 2016 at 12:31:30PM -0700, Jacob Keller wrote:
>
>> So far I've only found a single location that ends up looking worse
>> within the Linux kernel. Diffs of some Kbuild settings result in
>> something like
>>
>> before:
>>
>>
"Michael S. Tsirkin" writes:
> On Wed, Apr 06, 2016 at 06:58:30PM +0200, Matthieu Moy wrote:
>> "Michael S. Tsirkin" writes:
>>
>> > I have this in .git/config
>> >
>> > [trailer "r"]
>> > key = Reviewed-by
>> > command = "echo \"Michael S. Tsirkin > > [trailer "s"]
>> >
Torsten Bögershausen writes:
> May be something like this, (but this is highly a personal taste question)
My observation was not a suggestion to rewrite the log message, but
primarily about describing the change in behaviour.
I didn't mean to nitpick the phrasing but let me think aloud about
it
On Wed, Apr 06, 2016 at 06:58:30PM +0200, Matthieu Moy wrote:
> "Michael S. Tsirkin" writes:
>
> > I have this in .git/config
> >
> > [trailer "r"]
> > key = Reviewed-by
> > command = "echo \"Michael S. Tsirkin > [trailer "s"]
> > key = Signed-off-by
> > command =
`git commit --amend -m ''` seems to be an unambiguous request to blank a
commit message, but it actually leaves the commit message as-is. That's
the case regardless of whether `--allow-empty-message` is specified, and
doesn't so much as drop a non-zero return code.
Add failing tests to show this
Chris Packham writes:
> On Wed, Apr 6, 2016 at 10:24 AM, Junio C Hamano wrote:
>
>> Developer ending up amending is not an issue per-se, unless the
>> result is pushed back to the public.
>
> Correct and that was when the developer in question realised he had a problem.
But then "push" would ha
"Michael S. Tsirkin" writes:
> I have this in .git/config
>
> [trailer "r"]
> key = Reviewed-by
> command = "echo \"Michael S. Tsirkin [trailer "s"]
> key = Signed-off-by
> command = "echo \"Michael S. Tsirkin
> whenever I run git interpret-trailers -t r I see th
santi...@nyu.edu writes:
> From: Santiago Torres
>
> The run_gpg_verify function has two variables size, and len.
I somehow found this harder to parse than necessary.
> This may come off as confusing when reading the code. We clarify which one
> pertains to the length of the tag headers by ren
santi...@nyu.edu writes:
> From: Santiago Torres
>
> The verify-tag command supports multiple tag names as an argument.
That makes it sound as if this is a valid input
$ git verify-tag "one two three four"
but that is not what you meant.
> However, existing tests only test for invocat
santi...@nyu.edu writes:
> Subject: [PATCH v5 1/6] builtin/verify-tag.c: Ignore SIGPIPE on gpg-interface
s/Ignore/ignore/
> From: Santiago Torres
>
> The verify_signed_buffer comand might cause a SIGPIPE signal when the
> gpg child process terminates early (due to a bad keyid, for example) and
The first three looked almost good. I do not fully agree with what
4/6 does, and update to its function signature is likely to require
updates to 5/6 and 6/6.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More major
On Wed, Apr 06, 2016 at 07:57:01AM -0700, Junio C Hamano wrote:
> This seems to have been lost, perhaps because the top part that was
> quite long didn't look like a patch submission message or something.
Don't worry, we all know it's the submitter's responsibility to retransmit,
I apply the same
santi...@nyu.edu writes:
> From: Santiago Torres
>
> The PGP verification routine for tags could be accessed by other
> commands that require it. We do this by moving it to the common tag.c
> module. We rename the verify_tag() function to gpg_verify_tag() to avoid
> conflicts with the mktag.c fun
santi...@nyu.edu writes:
> From: Santiago Torres
>
> This change is meant to prepare verify_tag for libification. Many
> existing modules/commands already do the refname to sha1 resolution, so
> should avoid resolving the refname twice. To avoid breaking
> builtin/verify-tag, we move the refname
I have this in .git/config
[trailer "r"]
key = Reviewed-by
command = "echo \"Michael S. Tsirkin http://vger.kernel.org/majordomo-info.html
Matthieu Moy writes:
> A "git grep --author" would need to blame all files before searching
> inside them, or grep first and blame each line in the result to filter
> out lines from the wrong author. That would be possible, but relatively
> hard to implement and painfully slow. Which probably exp
Sidhant Sharma writes:
> Recently while playing around with git log, I realized that it is possible to
> pass incomplete (pre-defined) format names. For example, it is possible to use
> `git log --pretty=one` instead of oneline and it would still output the logs
> in
> oneline formatting. Same g
Antti Halttunen writes:
> Starting with git v2.7.0,
>
> submodules two levels deep get a .git contents of:
> gitdir: /absolute/path/name
I think that this is $gmane/290491
http://thread.gmane.org/gmane.comp.version-control.git/290491
and queued as sb/submodule-helper-clone-regression-fix topi
This seems to have been lost, perhaps because the top part that was
quite long didn't look like a patch submission message or something.
Git 1.7.12 is a quite ancient release and I wouldn't be surprised if
we made the behaviour change during the period leading to v2.6 on
purpose, but nothing immed
On Tue, Apr 5, 2016 at 5:52 PM, Junio C Hamano wrote:
> Thanks for a report.
Thanks for looking into it!
> I think this dates back to 883d60fa (Sanitize for_each_reflog_ent(),
> 2007-01-08):
>
> commit 883d60fa97c6397450fb129634054e0a6101baac
> Author: Johannes Schindelin
> Date: Mon Jan 8 01
Hi,
On Tue, 5 Apr 2016, Eric Wong wrote:
> Junio C Hamano wrote:
> > Eric Wong writes:
> >
> > > Using a mmddHHMMSS date representation is more meaningful to
> > > humans, especially when used for lookups on NNTP servers or linking
> > > to archive sites via Message-ID (e.g. mid.gmane.org
Hi Junio,
On Tue, 5 Apr 2016, Junio C Hamano wrote:
> Erik Bray writes:
>
> > I tracked the issue to refs/files-backend.c in show_one_reflog_ent :
> >
> > https://github.com/git/git/blob/11529ecec914d2f0d7575e6d443c2d5a6ff75424/refs/files-backend.c#L2923
> >
> > in which
> >
> > !(timestamp = s
On Thu, Mar 31, 2016 at 10:26 PM, Junio C Hamano wrote:
> Elena Petrashen writes:
>
>> @@ -214,6 +221,9 @@ static int delete_branches(int argc, const char **argv,
>> int force, int kinds,
>> const char *target;
>> int flags = 0;
>>
>> + expand_dash_shortcu
On Tue, Apr 5, 2016 at 12:53 AM, Remi Galan Alfonso
wrote:
> elena petrashen wrote:
>> On Thu, Mar 31, 2016 at 6:31 PM, Remi Galan Alfonso
>> wrote:
>> > Elena Petrashen wrote:
>> >> +void delete_branch_advice(const char *name, const char *ref)
>> >> +{
>> >> +const char fmt[] =
>> >> +
On Wed, Apr 6, 2016 at 10:24 AM, Junio C Hamano wrote:
> Chris Packham writes:
>
>> We ran into something at $dayjob the other day. The actual problem was
>> a developer ended up amending a commit that had already been pushed.
>> It happens occasionally and is usually recoverable with a simple
>>
On 06.04.16 08:51, Alexander Rinass wrote:
>
>> On 05 Apr 2016, at 21:15, Johannes Sixt wrote:
>>
>> Am 05.04.2016 um 19:09 schrieb Junio C Hamano:
Thanks-to: Torsten Bögershausen
>>
>> I sense NFD disease: The combining diaresis should combine with the o, not
>> the g. Here is a correct
On Tue, Apr 5, 2016 at 12:07 PM, wrote:
> v5 (this):
> Added helpful feedback by Eric
>
> * Reordering of the patches, to avoid temporal inclusion of a regression
> * Fix typos here and there.
> * Review commit messages, as some weren't representative of what the patches
>were doing anymor
On Tue, Apr 5, 2016 at 12:07 PM, wrote:
> tag: use gpg_verify_function in tag -v call
This is a low-level description of what the patch is doing, but you
normally want the subject to present a high-level overview. Perhaps
something like:
tag -v: verify directly rather than exec'ing git-veri
Hi all,
Starting with git v2.7.0,
submodules two levels deep get a .git contents of:
gitdir: /absolute/path/name
This breaks repos that are moved or copied:
fatal: Not a git repository:
/tmp/tmp.gIyxKWIC26/repo/.git/modules/sub/modules/sub
fatal: 'git status --porcelain' failed in submodule su
79 matches
Mail list logo