@AlexeySmk

Как, в моем случае, запушить файл с локального на удаленный репозиторий Git в другую ветку?

Доброго дня!
У меня есть удаленный репозиторий(назовем его *test*) который содержит ветку master, gh-pages и ветку additional которая идет от ветки gh-pages. Мне нужно запушить файл с моего локального репозитория в удаленный, в ветку additional. Как можно это сделать?

Поэтапно разложу свой порядок действий:
1. Инициализирую локальный репозиторий:
git init

2. Добавляю файл, который нужно запушить, в индекс:
git add "index.html"

3. Делаю коммит:
git commit -m "add new sections"

4. Подключаюсь к удаленному репозиторию:
git remote add origin https://github.com/github-name/test.git


5. Пытаюсь запушить коммит в ветку additional и получаю ошибку:
git push origin additional
=> error: src refspec additional does not match any
=> error: failed to push some refs to 'https://github.com/AlexeySmk/rsschool-cv.git'


5. Пробую переключиться на ветку, в которую надо запушить коммит и еще раз пытаюсь его запушить:
git checkout -b additional
=> Switched to a new branch 'additional'
git push origin additional


и получаю следующую ошибку:
! [rejected]        additional -> additional (fetch first)
error: failed to push some refs to 'https://github.com/github-name/test.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.


Буду благодарен за ответ!
  • Вопрос задан
  • 222 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Steppp
5) git push origin master
Ответ написан
vaut
@vaut
Вы делаете все не так.
1. у вас локално и на ремоуте совершенно разные репы.
2,3 . ваш коммит не имеет предков и на мастрере.
ну и дальше все идет черти как.
Не то что бы это было невозможно разрулить, но куда проще все сделать сразу правильно:

1. клоните удаленную репу git clone
2. переключаетесь на целевую ветку git checkout
3. делате коммит git add,git commit
4. пушите git push
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы