Почему я не могу внести изменения в это обновленное поддерево Git?

У меня есть модуль поддерева git под названием «gempak-tables» в подкаталоге «gempak/tables»:

$ git config -l | grep -i gempak
[email protected]:Unidata/GEMPAK-Tables.git
remote.gempak-tables.fetch=+refs/heads/*:refs/remotes/gempak-tables/*
$

Однако я не могу отправить изменения в модуль поддерева на GitHub:

$ git subtree push --prefix=gempak/tables gempak-tables master
git push using:  gempak-tables master
X11 forwarding request failed on channel 0
To [email protected]:Unidata/GEMPAK-Tables.git
 ! [rejected]        89d8f94d010e6677f146608674cf7408eecb4a61 -> master (non-fast-forward)
error: failed to push some refs to '[email protected]:Unidata/GEMPAK-Tables.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
$ 

хотя модуль поддерева кажется актуальным:

$ git subtree pull --prefix=gempak/tables gempak-tables master
X11 forwarding request failed on channel 0
From github.com:Unidata/GEMPAK-Tables
 * branch            master     -> FETCH_HEAD
Already up-to-date.
$ 

Моя версия git (1):

$ git --version
git version 1.8.3.1

Я новичок в поддеревьях. Пожалуйста помоги.


person Steve Emmerson    schedule 30.12.2019    source источник
comment
Разве команда обновления не должна быть git subtree pull --prefix=gempak/tables gempak-tables master ?   -  person phd    schedule 31.12.2019
comment
@phd Я добавил вывод вашей команды в свой запрос. Та же проблема.   -  person Steve Emmerson    schedule 31.12.2019


Ответы (2)


Ответ, скорее всего, уже дан Git subtree - subtree up- актуально, но не могу отправить

Я нашел ответ в этом комментарии в блоге https://coderwall.com/p/ssxp5q

Если вы столкнулись с проблемой Updates were rejected because the tip of your current branch is behind. Merge the remote changes (e.g. 'git pull') при отправке (по какой-либо причине, например, с историей git), вам нужно будет вложить команды git, чтобы вы могли принудительно нажать на героку. например, учитывая приведенный выше пример:

git push heroku `git subtree split --prefix pythonapp master`:master --force

person B--rian    schedule 18.02.2020

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

Делай git pull, а не git subtree pull

person Tin Nguyen    schedule 18.02.2020
comment
Это не решило проблему. Команда git pull получила сообщение Уже обновлено сообщение и последующее нажатие поддерева git --prefix=gempak/tables master gempak-tables привело к той же ошибке, что и раньше. - person Steve Emmerson; 18.02.2020