Github Pull Request: сравнивать не с чем - PullRequest
0 голосов
/ 19 декабря 2018

У меня есть основная ветка и ветка add_db для простого проекта.Я сделал все мои изменения кода и нажимает на add_db.Однако я хочу объединить все эти коммиты в мою основную ветку.Когда я пытаюсь создать запрос на загрузку на github, я получаю сообщение об ошибке: «Ничего не с чем сравнивать.

Я убедился, что у меня есть base: master сравнение: add_db.

Чтоя могу сделать, чтобы исправить это?

Это хранилище для контекста: https://github.com/boxcarcoder/Task-List

Я видел в другом посте, что я могу использовать git rebase --onto или git cherry-pick, но яя не уверен, как их использовать.Я новичок в Git.Спасибо, что нашли время, чтобы прочитать это.

Ответы [ 2 ]

0 голосов
/ 19 декабря 2018

Я сделал git merge add_db для объединения веток, а затем git pull (git url) master --allow-unrelated-history, чтобы обновить локальную ветку master до моей удаленной ветки master.Теперь, когда моя локальная главная ветвь имеет коммиты add_db и обновляет коммиты с моего пульта, я теперь могу использовать мастер исходников push --set-upstream.Мастер ветка моего github теперь имеет коммиты моего add_db.

По сути, мне пришлось выполнить слияние, тянуть, а затем нажать, чтобы обновить ветку master в моем пульте в github.

0 голосов
/ 19 декабря 2018

Git коммиты представляют собой связанный список коммитов с более поздним коммитом, а ветви являются указателями на ссылку коммита предыдущего коммита.C1 <-C2 <-C3 <-C4 <-C5 </p>

Вы можете создать запрос на слияние, если ваша дочерняя ветка возникла из родительской ветви.

         master
          |
          v
 C1<-C2<-C3    new_branch
          ^       |
          |       v
          C4<-C5<-C6

, если вы видите историю фиксациив обеих ветвях первый коммит (head commit) для них различен.Таким образом, вы не можете создать запрос на слияние, поскольку обе ветви были запущены из другой истории.

В вашем случае:

      master
        |
        v
C1<-C2<-C3

C4<-C5<-C6
         ^
         |
      add_db

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

master: C1<-C2<-C3
                   \
                   C7(merge commit)
                   /
add_db: C4<-C5<-C6

Также убедитесь, что вы всегда создаете новую ветку из другой ветки.

...