2016-08-30 5 views
0

У меня есть существующий git repo, и я хочу вытолкнуть все хеши (коммиты) из существующего git repo на новый git repo, у которого уже есть хотя бы один хэш (commit). Так что я хотел бы сделать следующее:Push to new git after rebase

  1. GIT тянуть против существующего мерзавца репо
  2. перебазироваться с использованием новых GIT репозитория
  3. толчка к новому мерзавцу репо

Каковы точные команды Git I нужно делать в последовательности?

+1

Пожалуйста, попробуйте использовать правильную терминологию GIT (вы не можете нажать на "мерзавец" и нет "проверить в" s) ,Если вы не знаете, как все называется, полностью избегайте концепций git и описывайте, что вы хотите делать с примерами, это должно избегать проблемы XY. –

+0

Что вы уже пытались заставить эту работу? И существует ли существующая дистанционная фиксация так же, как первая фиксация в локальном репо? –

+0

Посмотрите мои комментарии ниже. –

ответ

3

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

Я предполагаю, что есть по крайней мере один общий предок подходит в качестве объединения базы, в противном случае вам придется иметь дело с этим проблема перед тем, выполнив следующие действия


Я добавлю некоторые промежуточные шаги для вашего предложенного подхода

  1. Добавить удаленный репозиторий (new-repo) к old-repo
  2. Fetch данные new-repo
  3. Rebase master ветви на master ветвей от new-repo (продолжить с другими отраслями в аналогичном образе)
  4. раздвинуть обновленные филиалы в new-repo

Вопрос: Вы, возможно, захотите ответить заранее:

  • Не было бы проще объединить эти два?

  1. Добавить new-repo как удаленный

    $ git remote add new-repo <url-to-new-repo> 
    
  2. извлечения данных из new-repo

    $ git fetch new-repo 
    
  3. Rebase master (текущей ветви и уточненный) от old-repo на master из new-repo

    $ git rebase new-repo/master 
    
  4. Нажимаем new-repo

    $ git push new-repo master:master 
    
+0

спасибо, я сделал что-то очень похожее в конце: 1. git checkout origin/master 2. git remote add 3. git fetch - all 4. git rebase /master 5. git нажмите HEAD refs/heads/master –