Как удалить субмодуль?

Googling показывает marshal_as (untested):

// marshal_as_test.cpp
// compile with: /clr
#include 
#include 
#include 

using namespace System;
using namespace msclr::interop;

int main() {
   std::string message = "Test String to Marshal";
   String^ result;
   result = marshal_as( message );
   return 0;
}

Также см. Обзор маршалинга .

3303
задан Luca Kiebel 7 September 2018 в 08:22
поделиться

4 ответа

В случае, если необходимо сделать это в одна команда строки со сценарием удара как указано ниже:

$ cd /path/to/your/repo && /bin/bash $HOME/remove_submodule.sh /path/to/the/submodule

Создают файл сценария удара в $HOME, dir назвал т.е. remove_submodule.sh:

#!/bin/bash

git config -f .gitmodules --remove-section submodule.$1
git config -f .git/config --remove-section submodule.$1
git rm --cached $1
git add .gitmodules
git commit -m "Remove submodule in $1"
rm -rf $1
rm -rf .git/modules/$1
git push origin $(git rev-parse --abbrev-ref HEAD) --force --quiet

0
ответ дан 22 November 2019 в 19:47
поделиться

Удаление подмодуля мерзавца

Для удаления git подмодуль ниже 4 шагов необходимо.

  1. Удаляют соответствующую запись в .gitmodules файл. Запись могла бы быть как упомянутый ниже
[submodule "path_to_submodule"]
    path = path_to_submodule
    url = url_path_to_submodule
  1. , изменения Этапа git add .gitmodules
  2. Удаляют Фиксацию каталога git rm --cached <path_to_submodule>.
  3. подмодуля она git commit -m "Removed submodule xxx" и нажатие.

Дополнительные еще 2 шага, упомянутые ниже, необходимы для очистки подмодуля полностью в локальной клонированной копии.

  1. Удаляют соответствующую запись в .git/config файл. Запись могла бы быть как упомянутый ниже
[submodule "path_to_submodule"]
    url = url_path_to_submodule
  1. , Делают rm -rf .git/modules/path_to_submodule

, Эти 5-е и 6-е шаги не делают создает любые изменения, который должен фиксировать.

0
ответ дан 22 November 2019 в 19:47
поделиться

На странице Учебник по подмодулю Git :

Чтобы удалить подмодуль, вам необходимо:

  1. Удалить соответствующий раздел из .gitmodules файл.
  2. Подготовьте изменения .gitmodules :
    git add .gitmodules
  3. Удалите соответствующий раздел из .git / config .
  4. Удалите подмодуль файлы из рабочего дерева и индекса:
    git rm --cached path_to_submodule (без косой черты в конце).
  5. Удалите каталог .git подмодуля:
    rm -rf .git / modules / path_to_submodule
  6. Зафиксируйте изменения:
    git commit -m "Удален подмодуль <имя>"
  7. Удалите теперь неотслеживаемые файлы подмодуля:
    rm -rf path_to_submodule

См. также : альтернативные шаги ниже .

3366
ответ дан 22 November 2019 в 19:47
поделиться

Вы должны удалить запись в .gitmodules и .git / config , а также удалить каталог модуля из истории:

git rm --cached path/to/submodule

Если вы напишете в список рассылки git, возможно, кто-нибудь напишет для вас сценарий оболочки.

49
ответ дан 22 November 2019 в 19:47
поделиться
Другие вопросы по тегам:

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