Как избежать слияния с помощью Git pull при нажатии на удаленный
У меня есть репозиторий и некоторые локальные изменения для фиксации.
Прежде чем совершать транзакции, я вытащил изменения на свой локальный, используя Egit в Eclipse.
Он создает фиксацию слияния, и я отправляю свое сообщение над ним.
Теперь, когда я пытаюсь нажать на начало координат, он показывает, что он будет толкать мое сообщение, а также слияние.
Но в идеале, объединение слиянием не должно быть частью удаленного репозитория.
Как этого избежать?
Ответы
Ответ 1
Используйте опцию rebase всякий раз, когда вы вытаскиваете из удаленного репозитория. Следуйте приведенным ниже инструкциям,
- Зафиксируйте свои изменения. Он создаст новую фиксацию в локальном.
- Теперь сделайте
git pull --rebase <remote-name> <branch-name>
.
- В основном rebase извлекает ваши фиксации, которые вы совершили в текущем филиале HEAD, в качестве патча. Затем он применит все удаленные коммиты поверх HEAD, а затем применит ваши коммиты поверх него.
- Лучше всего применять фиксацию изменений, а затем извлекать удаленные коммиты, используя опцию rebase.
Ответ 2
Обычная стратегия - работать на ветке. Когда удаленный мастер изменится, потяните за изменения в master и вместо слияния, rebase ветвь.
Смотрите Git Rebase в Atlassian.
Ответ 3
Если у вас есть незафиксированные изменения, вы можете сделать,
git stash
git pull --rebase <remote> <branch>
git stash pop