2013-06-19 7 views
1

Я перемещаю наш проект от perforce до git. После нескольких настроек и guide я успешно создал свое git-репо и импортированный источник из perforce. Затем я столкнулся с проблемой, что я не могу просто импортировать последующие изменения p4 в git repo. (Большинство из нас все еще работает над perforce).git-p4: sync p4 изменяется на git repo

  1. ГИТ-p4 синхронизации
  2. мерзавец мастер толчок происхождения

получил следующее сообщение об ошибке

[rejected] master -> master (non-fast-forward) error: failed to push some refs to '[email protected]:xxx/yyyyy.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Merge the remote changes (e.g. 'git pull') hint: before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Я также попытался

  1. ГИТ-p4 синхронизации
  2. ГИТ-p4 перебазироваться
  3. мерзавец тянуть
  4. GIT толчок

, который работал в конце концов. Но я понятия не имею, почему.

Руководство синхронизации ГИТ-p4 сказал

After an initial import you can easily synchronize your git repository with newer changes from the Perforce depot by just calling git-p4 sync in your git repository. By default the "remotes/p4/master" branch is updated.

Так что я предположил, что именно поэтому последующее «мерзавец толчок» не работает. Нужно ли мне каждый раз переустанавливать/тянуть/нажимать? Я что-то пропустил? Я новичок в git, пожалуйста, помогите.

+0

Какова ваша цель с помощью 'git push origin master' – cmcginty

+0

@Casey, push source to remote repo on github – fifth

+0

Альтернативный инструмент, который может вас заинтересовать: [git-p4s] (http: //lm1.github. io/git-p4s /) – user212328

ответ

2

Если вы нажимаете код на стандартное git-репо, и оно отклонено, вам необходимо переустановить изменения на origin/master.

+0

После нескольких дней тестирования я наконец понял, что «rebase» сделал трюк, git-p4 sync, git-p4 rebase, git push, вот и все. – fifth

Смежные вопросы