Подмодуль мерзавца в подмодуле (вложенные подмодули)

Я пользовался библиотекой ActiPro в течение нескольких месяцев, и она сделала меня хорошо. Это действительно поддерживает несколько прикрепляющихся сайтов. Поддержка является выдающейся, и Вы получаете некоторые другие средства управления (средство выбора даты, и т.д.), которые отсутствуют в WPF. Мне за 150$ это - деньги, хорошо потраченные. Это работало из поля, никакой суеты.

Мы раньше использовали Divelements для средств управления WinForm, но мы думаем, что Actipro имеет лучшую поддержку, таким образом, мы переключились для WPF.

Просто мои два цента.

129
задан Philip Kirkbride 17 February 2017 в 17:33
поделиться

1 ответ

Как Шридхар комментарии ниже, из Git1.6.5 +, git clone --recursive теперь является официальной альтернативой, описанной в:

inamiy правильно указывает на команду git submodule update --init --recursive , введенную в commit b13fd5c , снова в git1.6.5, Johan Herland ( jherland ) .

И IceFire добавляет в комментарии :

Если вы хотите проверить только один подмодуль подмодуля, затем
git submodule update --init - это путь.


(старый исходный ответ)

Согласно странице руководства

 git submodule update --recursive

следует обновить все вложенные подмодули. Но часть инициализации может не быть рекурсивной.

В зависимости от вашей версии Git, вы можете вернуться к более «скриптовому» подходу в этой статье Рекурсивное обновление подмодулей Git , которая позволяет рекурсивно запускать и обновлять:

#!/usr/bin/perl

use strict;
use Cwd;

init_and_update();

exit;

sub init_and_update
{
    my $start_path = cwd();

    my %paths;
    my $updated;

    do
    {
        my $data = `find . -name '.gitmodules'`;
        chomp($data);

        $data =~ s/\/\.gitmodules//g;

        foreach my $path (split(/\n/, $data))
        {
            $paths{$path} = '' if($paths{$path} eq '');
        }

        $updated = 0;

        foreach my $path (sort keys %paths)
        {
            if($paths{$path} eq '')
            {
                chdir($path);
                `git submodule init 2>&1`;
                `git submodule update 2>&1`;
                chdir($start_path);

                if($ARGV[0] eq '--remove-gitmodules')
                {
                    unlink("$path/.gitmodules");
                }

                $paths{$path} = 1;

                $updated++;
            }
        }
    } while($updated);
}
53
ответ дан 24 November 2019 в 00:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: