On Wed, Feb 17, 2016 at 5:34 PM, Matthieu Moy
<matthieu....@grenoble-inp.fr> wrote:
> Stefan Beller <sbel...@google.com> writes:
>
>> I'd be interested to co-mentor a sh->C conversion.
>>
>> I think the git-rebase*.sh is a good start.
>>
>> $ wc -l git-rebase*.sh
>>   101 git-rebase--am.sh
>>  1296 git-rebase--interactive.sh
>>   167 git-rebase--merge.sh
>>   636 git-rebase.sh
>>  2200 total
>>
>> So start with rebase--am and rebase--merge to have the same amount
>> of lines as git-pull.sh. I did not look at the code, just judging by
>> the lines of
>> code.
>
> There's a funny exercice there: the git-rebase--$type.sh scripts are not
> called as external helpers, but like this:
>
> run_specific_rebase () {
>         if [ "$interactive_rebase" = implied ]; then
>                 GIT_EDITOR=:
>                 export GIT_EDITOR
>                 autosquash=
>         fi
>         . git-rebase--$type
>         # ...
>
> So, turning these scripts into builtins would first require turning this
> ". git-rebase--$type" into an actual command call. But nothing
> unfeasible.

Yeah we can turn those git-rebase--*.sh into separate actual programs,
then we can convert git-rebase.sh to C and other subprograms at a
later time. I started something back in 2013 [1] but never managed to
finish it. Also see the abandoned rewrite effort [2] from git for
windows

[1] https://github.com/pclouds/git/commits/rebase-rewrite
[2] https://github.com/git-for-windows/git/pull/461
-- 
Duy
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to