From: Bo Yang <struggleyb.nku@gmail.com>
To: Jakub Narebski <jnareb@gmail.com>
Cc: Jonathan Nieder <jrnieder@gmail.com>,
Junio C Hamano <gitster@pobox.com>,
gitzilla@gmail.com, Alex Riesen <raa.lkml@gmail.com>,
git@vger.kernel.org
Subject: Re: GSoC draft proposal: Line-level history browser
Date: Tue, 23 Mar 2010 18:38:42 +0800 [thread overview]
Message-ID: <41f08ee11003230338y5cf70a13xa649e67071bc2a72@mail.gmail.com> (raw)
In-Reply-To: <m38w9jjqqd.fsf@localhost.localdomain>
Hi,
>
> Errr... how the first line in preimage differs from first line in
> postimage? The look as if they are the same:
>
> - for (i = 0; i < extra_hdr_nr; i++) {
> + for (i = 0; i < extra_hdr.nr; i++) {
>
Maybe some space... :)
>
> The problem is when you are asking about tracking a subset of lines
> that appear in postimage of a patch. For example if we ask for
> history of
>
> strbuf_addstr(&buf, extra_hdr.items[i].string);
>
> line, should we track history of
>
> for (i = 0; i < extra_hdr.nr; i++) {
>
> line which appears in relevant diff chunk? If not, how we should
> detect which line in preimage (if any) corresponds to given line in
> postimage?
If I understand correctly, that is as following.
@@ -1008,29 +1000,29 @@ int cmd_format_patch(int argc, const char
**argv, const char *prefix)
add_signoff = xmemdupz(committer, endpos - committer + 1);
}
- for (i = 0; i < extra_hdr_nr; i++) {
- strbuf_addstr(&buf, extra_hdr[i]);
+ for (i = 0; i < extra_hdr.nr; i++) {
+ strbuf_addstr(&buf, extra_hdr.items[i].string);
strbuf_addch(&buf, '\n');
}
Here, the user only ask for tracking the strbuf_addstr line. And we
find the above diff hunk. I think we can then find what the line would
be in the preimage using @@ -1008,29 +1000,29 @@. The strbuf_addstr
is located at
1000(the postimage start line number)
+3(the context number)
+1(the number of lines '+' before this line) in the postimage,
and we can calculate its line number in the preimage by the same way
1008
+3
+1(the number of lines with '-' before this line).
How do you think about this method?
Regards!
Bo
next prev parent reply other threads:[~2010-03-23 10:38 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-20 9:18 GSoC draft proposal: Line-level history browser Bo Yang
2010-03-20 11:30 ` Johannes Schindelin
2010-03-20 13:10 ` Bo Yang
2010-03-20 13:30 ` Junio C Hamano
2010-03-21 6:03 ` Bo Yang
2010-03-20 13:36 ` Johannes Schindelin
2010-03-21 6:05 ` Bo Yang
2010-03-20 20:35 ` Alex Riesen
2010-03-20 20:57 ` Junio C Hamano
2010-03-21 6:10 ` Bo Yang
2010-03-20 21:58 ` A Large Angry SCM
2010-03-21 6:16 ` Bo Yang
2010-03-21 13:19 ` A Large Angry SCM
2010-03-22 3:48 ` Bo Yang
2010-03-22 4:24 ` Junio C Hamano
2010-03-22 4:34 ` Bo Yang
2010-03-22 5:32 ` Junio C Hamano
2010-03-22 7:31 ` Bo Yang
2010-03-22 7:41 ` Junio C Hamano
2010-03-22 7:52 ` Bo Yang
2010-03-22 8:10 ` Jonathan Nieder
2010-03-23 6:01 ` Bo Yang
2010-03-23 10:08 ` Jakub Narebski
2010-03-23 10:38 ` Bo Yang [this message]
2010-03-23 11:22 ` Jakub Narebski
2010-03-23 12:23 ` Bo Yang
2010-03-23 13:49 ` Jakub Narebski
2010-03-23 15:23 ` Bo Yang
2010-03-23 19:57 ` Jonathan Nieder
2010-03-23 21:51 ` A Large Angry SCM
2010-03-24 2:30 ` Bo Yang
2010-03-23 12:02 ` Peter Kjellerstedt
2010-03-23 18:57 ` Jonathan Nieder
2010-03-24 2:39 ` Bo Yang
2010-03-24 4:02 ` Jonathan Nieder
2010-03-22 10:39 ` Alex Riesen
2010-03-22 15:05 ` Johannes Schindelin
2010-03-22 3:52 ` Bo Yang
2010-03-22 15:48 ` Jakub Narebski
2010-03-22 18:21 ` Johannes Schindelin
2010-03-22 18:38 ` Sverre Rabbelier
2010-03-22 19:26 ` Johannes Schindelin
2010-03-22 20:21 ` Sverre Rabbelier
2010-03-22 19:24 ` Johannes Schindelin
2010-03-23 6:08 ` Bo Yang
2010-03-23 6:27 ` Bo Yang
[not found] ` <201003282120.40536.trast@student.ethz.ch>
2010-03-29 4:14 ` Bo Yang
2010-03-29 18:42 ` Thomas Rast
2010-03-30 2:52 ` Bo Yang
2010-03-30 9:07 ` Michael J Gruber
2010-03-30 9:38 ` Michael J Gruber
2010-03-30 11:10 ` Bo Yang
2010-03-30 9:10 ` Jakub Narebski
2010-03-30 11:15 ` Bo Yang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=41f08ee11003230338y5cf70a13xa649e67071bc2a72@mail.gmail.com \
--to=struggleyb.nku@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=gitzilla@gmail.com \
--cc=jnareb@gmail.com \
--cc=jrnieder@gmail.com \
--cc=raa.lkml@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).