LINUX.ORG.RU

сабмодуль как апдейтить?

 


0

3

создал я репозиторий common

В 1 проекте добавляю сабмодуль

git submodule add git@bitbucket.org:some/common.git
git submodule init

далее делаю:

git add .;git commit;git push origin master

Закоммитил. Далее делаю изменение в common. При коммите вылезает сообщение, что файл в common изменен и сделайте commit -a. Делаю commit -a и ничего не меняется. Как правильно апдейтить сабмодуль? Может какой-то хук нуже или я что-то не правильно делаю?

★★★★

Последнее исправление: bryak (всего исправлений: 1)

Зайди в дирректорий сабмодуля и там закомить. А потом и там где щас.

anonymous
()

Фирштейн?

anonymous
()

Ясно. Перед коммитом в основном проекте, нужно делать коммит и пуш в сабмодуле. А как сделать автоматически, чтобы в основном проекте я коммитил и автоматически коммитился и пушился сабмодуль?

bryak ★★★★
() автор топика
Ответ на: комментарий от bryak

Посмотри на git repo, его используют в Android. Наверняка там эта машинерия уже настроена.

TheKnight ★★★
()

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

upcFrost ★★★★★
()

На какой ветке надпроект? А подпроект? А другие подпроекты? А эти ветки логически совместимы?

С вашим уровнем знаний я бы автоматизацей пользоваться не советовал.

level1 ★★
()
Последнее исправление: level1 (всего исправлений: 1)
Ответ на: комментарий от level1

Ну вот перейди в тот репо и исправь и дополни. Править сабмодуль не находясь чисто в том самом его репо — определённо изврат. Иначе в чем смысл сабмодулей тогда вообще?

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

Это неудобно. Особенно с IDE с хорошей поддержкой переходов по символам

в чем смысл сабмодулей тогда вообще?

В отдельной истории и удобном обновлении с remote

DllMain
()
Ответ на: комментарий от DllMain

git ошибку даст

Конечно даст, потому что команда сама по себе ошибочна. Но если идти именно по этому пути, то будет именно то, что я сказал, пропадет работа.

level1 ★★
()
Ответ на: комментарий от deep-purple

Ну вот перейди в тот репо и исправь и дополни

Я смысла этой фразы просто не понимаю. У меня уже есть «это» репо в качестве субмодуля, мне больше не нужно никуда переходить.

в чем смысл сабмодулей

В том, что можно в стороннюю либу дописывать и отсылать код владельцу, например.

level1 ★★
()
Ответ на: комментарий от level1

перейди в тот репо и исправь и дополни

Я смысла этой фразы просто не понимаю

Ты что-ли *IDE-buttons-for-git-command-clicker-only* ? Если да, то ясно почему ты не понимаешь, ибо:

У меня уже есть «это» репо в качестве субмодуля, мне больше не нужно никуда переходить. Стороннюю либу дописывать и отсылать код владельцу, например.

Мы тут вообще об одном, но по разному.

deep-purple ★★★★★
()
Ответ на: комментарий от level1
$ git -C sub status
 M ururu
?? ururu2
$ git submodule update
$ git -C sub status
 M ururu
?? ururu2
$ git submodule update --remote
error: Your local changes to the following files would be overwritten by checkout:
	ururu
Please commit your changes or stash them before you switch branches.
Aborting
Unable to checkout '32b85ca706a1ff7c539b3c950d2b7ef17fc9edc5' in submodule path 'sub'

Ты бы хоть вникал, когда чепуху всякую нагуглить пытаешься

DllMain
()
Последнее исправление: DllMain (всего исправлений: 1)
Ответ на: комментарий от deep-purple

Вот об этом, вестимо

Ну вот перейди в тот репо и исправь и дополни

DllMain
()
Ответ на: комментарий от deep-purple

Допустим, есть у меня проект ~/my/ и в нем подпроект с внешней либой ~/my/extlib/. В какое репо ты мне предлагаешь перейти для внесении изменений в либу?

level1 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.