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

У меня есть коммиты, которые находятся в удаленном репозитории (origin/master), который я хочу поместить в ветку, созданную из этого репозитория (origin/remote_branch).

когда я выхожу на эту удаленную ветку

git checkout -b mybranch origin/remote_branch

тогда вишня выбрала коммиты, которые я сделал

git cherry-pick 9df63616b0428cf6edc4261adb533a1ac516b9a0

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

git push

Есть ли что-то, что я делаю неправильно?

Ответ 1

В зависимости от вашей версии Git она может пытаться нажимать ветки с соответствующими именами, то есть от master до origin/master и remote_branch до origin/remote_branch. Если в вашем исходном репозитории нет ветки с именем mybranch, тогда он не хочет ничего обновлять.

Чтобы переопределить это значение по умолчанию, вы можете явно указать git, какую ветку использовать в качестве источника (mybranch) и который использовать в качестве адресата в удаленном репозитории (remote_branch):

git push origin mybranch:remote_branch

Здесь есть опция конфигурации, чтобы сообщить git нажать на удаленные ветки отслеживания по умолчанию:

git config --global push.default tracking

Я нахожу это более интуитивным, и я думаю, что это поведение, которое вы ищете. Оформить заказ push.default на странице git config man. Также просмотрите раздел "Примеры" на странице git push man, чтобы увидеть, как переопределить поведение по умолчанию.