From: Bo Yang <techrazy.yang@gmail.com>
To: git@vger.kernel.org
Subject: Make git-merge and helpers Builtins
Date: Thu, 20 Mar 2008 20:31:33 +0800 [thread overview]
Message-ID: <47E25925.4050703@gmail.com> (raw)
Hi,
I have used Git for one year, and I join into this list for 3 or 4
monthes. Sometime, I post some questions here and followed some
disscusions. I have noticed that, there is a potential project in this
GSoC "make git-merge and helplers builtins". I think I am one of the
suitable students for this project because I am familiar with shell
script programming and c language. And I post this message here to hope
I can discuss more with the community about this project.
I have git clone the Git's source code for some days. And with some
insight into the code, I found that some of the merge related code is
located in sh script: git-merge-octopus.sh git-merge-one-file.sh
git-merge-resovle.sh git-merge.sh git-mergetool.sh . And others are
located in c source code: builtin-merge-base.c builtin-merge-file.c
builtin-merge-ours.c builtin-merge-recrusive.c and merge-file.c
merge-tree.c merge-index.c merge-recursive.h for two simple declarations.
And git-mergetool.sh is itself an interactive shell process, I think
there is no need to deal with it. So, the main work for this project is
to change the other four scripts into c format. For deatails, instead of
call the git merge-base in the shell, we make the final corresponding c
code to call the functions in the builtin-merge-base.c. Could you please
tell more about the work if I miss something?
Finally, I have some questions about the merge code. I found there
are many merge related code and I can't understand them at a short time.
So, pleaes help me if you can.
1. git-merge-file is used to merge one file, but what are
merge-octopus and merge-resovle?
2. I see in builtin-merge-file.c and merge-file.c, there are both
functions used to merge file. And finally, they both call the xdl_merge
. Could you please tell me how differenct of these to methods? I ask
this question because I think there are some redundant code in the git
source. Forgive me if I am wrong, I have no hostility but want to know
why things are like that.
Thank you!
Regards!
Bo
next reply other threads:[~2008-03-20 12:32 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-20 12:31 Bo Yang [this message]
2008-03-20 14:02 ` Make git-merge and helpers Builtins Daniel Barkalow
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47E25925.4050703@gmail.com \
--to=techrazy.yang@gmail.com \
--cc=git@vger.kernel.org \
/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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.