У меня есть git-репозиторий, содержащий приложение, и я хочу использовать подкаталог этого репозитория для обновления общего репозитория библиотеки. Я могу получить репозиторий библиотеки, зафиксировать обновление, но не могу заставить его отправить этот коммит обратно на удаленный компьютер. Это должно быть ускоренное движение вперед, но оно говорит, что это не так. Что я делаю не так?
$ git remote add lib goertzen@minerva:/pub/shared_git_repositories/lib.git
$ git fetch
From minerva:/pub/shared_git_repositories/lib
* [new branch] master -> lib/master
$ git checkout -b libmaster lib/master
Branch libmaster set up to track remote branch master from lib.
Switched to a new branch 'libmaster'
$ git merge --squash -s subtree -X theirs master
Auto-merging lib.yaml
Squash commit -- not updating HEAD
Automatic merge went well; stopped before committing as requested
$ git commit -m "blah blah blah"
[libmaster 4949ef3] blah blah blah
1 files changed, 148 insertions(+), 95 deletions(-)
$ git push lib
To goertzen@minerva:/pub/shared_git_repositories/lib.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'goertzen@minerva:/pub/shared_git_repositories/lib.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
$ git pull
Already up-to-date.
$ git log --graph --all --full-history --branches --decorate
* commit 4949ef3181c21d85340b9fb16af5f9c2c58e75ae (HEAD, libmaster)
| Author: <snip>
| Date: Tue Mar 8 15:25:03 2011 -0600
|
| minitransfer changes
|
* commit e2dca9e2bcd28d09a455e9cc662f7eb630a0adc2 (lib/master)
Author: <snip>
Date: Thu Feb 24 10:54:31 2011 -0600
initial commit of shared lib repo
* commit b70bde69e5c4ddb079d06d7310d415fa89764b95 (origin/master, origin/HEAD, master)
| Author: <snip>
| Date: Fri Mar 4 15:41:05 2011 -0600
|
| fix typo
|
* commit cc64b565fbb88729e16314f76867ab24c37bfc47
| Author: <snip>
| Date: Fri Mar 4 15:38:59 2011 -0600
|
...
Я могу заменить сжатое объединение поддеревьев тривиальным редактированием, и у меня все еще остаются те же проблемы.