не может добавить каталог, содержащий git cloned subdiretories?

I have a directoryA which contains sub directories which I created via git clone

I want to create a git repository for the directoryA.
But when I do git add -A && git commit -m "w" nothing gets committed.

Нужно ли уделить особое внимание работе с git-клонированными подкаталогами ?

directoryA is my special directory for collection of libraries I use for my project.

0
добавлено отредактировано
Просмотры: 1
de
Я думаю, вы хотите посмотреть на подмодули git.
добавлено автор Thilo, источник

2 ответы

В общем случае git не позволяет иметь один репозиторий git в подкаталоге другого.

Единственным исключением из этого правила является использование git-подмодулей . Однако у этого есть много других последствий, которые вам могут не нравиться. Например, родительский git-репозиторий должен отслеживать, на каком конкретном компиляторе id должен быть извлечен. Если вы добавляете новый материал в субмодуль - локально или вытаскиваете его извне, вы также должны изменить состояние родительского репо и создать еще одну фиксацию для отражения состояния субмодуля.

Чтобы решить эти проблемы, проект Android создал другой способ решения этих проблем, а именно: < код> репо . Хотя repo используется в основном проектами Android, это очень общий механизм, который можно использовать для любых других целей.

repo relies on xml file called manifest (it lives in small git repository of its own). Manifest defines where all git repositories that define the whole project are checked out and at what revisions and branches. It is very powerful mechanism. The only limitation of repo is that it does not support Windows because it requires to use symbolic links (but Linux and Mac are supported very well).

0
добавлено
directoryA - мой специальный каталог для коллекции библиотек, которые я использую для моего проекта. Должен ли я смотреть на подмодули?
добавлено автор eugene, источник
вы также можете использовать android repo - я думаю, что у вас будет больше проблем с подмодулями в долгосрочной перспективе (я обновил свой ответ, чтобы описать repo ))
добавлено автор mvp, источник

То, что вы создаете, - это неинициализированные подмодули, и да, подмодули требуют некоторой специальной обработки, чтобы эффективно использовать их.

Как только подмодуль инициализируется, вы сможете зафиксировать подкаталог, в котором он живет, из родительского проекта.

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

То, что делает обработку специальных подмодулей, можно суммировать в нескольких ключевых понятиях:

  • Субмодулы должны быть инициализированы до того, как родительский репозиторий узнает о них.
  • Подмодули должны быть клонированы, обновлены и заработаны специально, хотя есть опции команд, которые автоматизируют некоторые из этих.
  • Субмодули - это полные репозитории с одной проверкой фиксации; как таковые, они без головы и ветвь должна быть создана до того, как могут быть совершены какие-либо изменения.
  • Любые изменения в подмодулях следует сначала проверять перед внесением изменений в родительский репозиторий. Родительское обновление подмодуля на самом деле является обновлением того, какой из подмодулей фиксирует родительский факт.

Вот несколько ссылок, которые были очень полезны для меня, когда мне нужно было окунуться в подмодули, что было весьма полезно для отслеживания различных частей моих проектов.

Git Tools - SubModules

     

Git Submodules: добавление, использование, Удаление, обновление

     

Понимание подмодулей Git

0
добавлено