Я пользовался библиотекой ActiPro в течение нескольких месяцев, и она сделала меня хорошо. Это действительно поддерживает несколько прикрепляющихся сайтов. Поддержка является выдающейся, и Вы получаете некоторые другие средства управления (средство выбора даты, и т.д.), которые отсутствуют в WPF. Мне за 150$ это - деньги, хорошо потраченные. Это работало из поля, никакой суеты.
Мы раньше использовали Divelements для средств управления WinForm, но мы думаем, что Actipro имеет лучшую поддержку, таким образом, мы переключились для WPF.
Просто мои два цента.
Как Шридхар комментарии ниже, из Git1.6.5 +, git clone --recursive
теперь является официальной альтернативой, описанной в:
git clone --submodule
" - рекурсивный
в репозиторий git » псевдонимом $ git config --global alias.cloner = 'clone --recursive'
, который позволяет избежать затенения нормальной команды git clone
) 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);
}