2013-06-17 5 views
0

У меня есть проект git, мы будем называть его «A», который имеет подмодуль, который мы назовем «B». Я слежу за руководством от http://git-scm.com/book/en/Git-Tools-Submodules и все вопросы здесь, касающиеся stackoverflow, но я не могу получить проект «А», чтобы изменить ссылку на фиксацию для проекта «В». Мне нужна помощь в выяснении того, что я делаю неправильно. Вот входной/выходной последовательности Пример команды:Git: обновить подмодуль до последней версии

A $> git status 
# On branch company 
nothing to commit (working directory clean) 
A $> cd 'B' 
B $> git pull origin master 
From https://github.com/company/B 
* branch   master  -> FETCH_HEAD 
Updating bfab259..04e69cf 
Fast-forward 
Capfile           | 45 ++++++++--- 
Gemfile           | 3 +- 
Rakefile           | 86 +++++++++++++------ 
config/deploy.rb         | 15 +++- 
config/dev.properties        | 3 - 
config/local.properties       | 45 ++--------- 
config/prod.properties        | 44 ---------- 
config/production.properties      | 15 ++++ 
config/staging.properties       | 44 ++-------- 
config/company.properties       | 41 --------- 
config/company_test.properties      | 48 ----------- 
.../kafka/producers/Manager.java     | 33 ++++++-- 
.../kafka/producers/http/SysomosClient.java  | 4 +- 
13 files changed, 164 insertions(+), 262 deletions(-) 
delete mode 100644 config/dev.properties 
delete mode 100644 config/prod.properties 
create mode 100644 config/production.properties 
delete mode 100644 config/company.properties 
delete mode 100644 config/company_test.properties 
B $> cd .. 
A $> git submodule update 
Submodule path 'infochimps-deploy': checked out 'bfab2595257ea01722566495997376c47794a5ee' 
A $> git commit -a -m "Updated submodule" 
# On branch company 
nothing to commit (working directory clean) 

Я, очевидно, в состоянии вывести новый код в подмодуль, но когда каждый обновляю подмодуль, он сообщает старый хэш (bfab2595257ea01722566495997376c47794a5ee) до сих пор, и когда Я пытаюсь зафиксировать после того, как обновление git сообщает мне, что ничего не делать.

Я не очень опытен с git и могу использовать некоторую помощь, выясняя, что я сделал неправильно. Спасибо за помощь.

ответ

2

git submodule update используется для обновления модуля до версии вашего репозитория.

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

Довести все подмодулях до настоящего времени, вы можете сделать:

git submodule foreach git pull 
+0

Я пробовал. –

+0

Я попытался зафиксировать в каталоге подмодулей после того, как вытащил последний код (сделанный так же, как показало оригинальное сообщение), а затем попытался записать в каталоге подмодулей. Я все еще получаю сообщение «ничего не делать». –

+1

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

Смежные вопросы