Как сделать pu sh после того, как я извлек к предыдущему коммиту, затем я сделал некоторые коммиты, и теперь, когда я pu sh, изменения не отправляются - PullRequest
0 голосов
/ 15 января 2020

Я сделал извлечение для предыдущего коммита. Затем я внес изменения в код и зафиксировал, что мне теперь делать, в pu sh и извлеките из внешнего хранилища.

Как я могу вернуть HEAD в текущая (проверенная и отредактированная) версия моего кода и интеграция его с кодом из внешнего репозитория

1 Ответ

1 голос
/ 15 января 2020

Кажется, вас привели к отдельной ГОЛОВЕ, которую можно рассматривать как безымянную ветвь. Решение состоит в том, чтобы найти сделанные вами коммиты и применить их к именованной ветви.

Из вашего описания я не могу сказать, в каком состоянии вы сейчас находитесь. Итак, во-первых, используйте git reflog, чтобы узнать коммиты. git reflog печатает список коммитов, на которые HEAD однажды указал. Сверху вниз найдите коммит FIRST , с которым вы знакомы, и вы уверены, что это один или один коммит, который вы сделали в безымянной ветви. Если вы сделали только один коммит, то это то, что мы ищем. Если вы сделали более одного, используйте git log <commit>, чтобы найти их все. Если ситуация более сложная, что, я надеюсь, нет, используйте git reflog, а затем git log несколько раз против возможных коммитов, чтобы найти все коммиты, которые кажутся потерянными.

Во-вторых, примените эти коммиты к названная ветка. Предположим, вы хотите, чтобы они были на master.

# switch to master
git checkout master

# apply the commits from the oldest to the youngest
git cherry-pick A B C

Наконец, обновите и pu sh master.

git pull origin -r master
git push origin master
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...