Пожалуйста, помогите.Как правильно нажать на репозиторий с более новым номером ревизии?
У меня всегда возникают трудности с переносом моих изменений в существующий удаленный репозиторий, где номер версии является более новым. то есть кто-то нажал на этот репозиторий после того, как я последний раз тяну.
Я использую ubuntu 14.04
и netbeans
и mercurial
и meld
и мой проект является приложением PHP с использованием базы Laravel.
мое текущее решение,
- для резервного копирования моего локального репозитория;
- затем, в моем первом локальном репозитории, принудительно обновите тег
tip
; - извлекать последние данные в удаленном репозитории с использованием первого локального репозитория;
- вытащить последнее в удаленном репозитории (я не знаю разницы между извлечением и вытаскиванием, если кто-то может пролить некоторый свет, я определенно был бы благодарен);
- open meld; сравнить два каталога репозитория (первый локальный репозиторий и резервное копирование); помните, какие файлы (-ы) отличаются, тогда;
- в netbeans, примените
alt
+shift
+f
(Формат) в каждом из файлов, которые отличаются в обоих каталогах, чтобы я мог удалить ненужные пробелы, и я мог легко увидеть изменения (когда я снова сравню два каталога в сочетании) с надлежащими углублениями и более ясными разрывами линий; - Затем, откройте meld, сравните два каталога репозитория еще раз, и на этот раз я теперь мог легко понять выполненные изменения;
- применяйте необходимые изменения к каждому репозиторию до тех пор, пока они не будут равны друг другу (на этом шаге вы должны быть очень осторожны, поскольку это уже ваша резервная копия, которая изменяется);
- зафиксировать изменения первого локального репозитория. который имеет
tip
, равный последней версии в удаленном репозитории; - затем нажмите на внесенные изменения.
Я не хочу использовать это решение, так как оно требует также наличия второго резервного хранилища (другими словами, проблем с емкостью). Пожалуйста, помогите мне найти другое решение.
Если я все другое, как, во-первых, вытягивая последние изменения (от моих коллег) из удаленного репозитория: Я получаю сообщение об ошибке:
abort: outstanding uncommitted changes
Если я нажимаю первый: ошибка:
abort: push creates new remote heads on branch 'default'!
(did you forget to merge? use push -f to force)
тогда иногда, если я тяну с помощью терминала, мне требуется слить. и очень сложно объединиться в терминале, когда у вас нет контроля над тем, какие файлы вы собираетесь сначала объединить (терминал открывает инструмент сравнения meld для каждого измененного файла в алфавитном порядке),
и иногда вам необходимо применить «Формат», сначала для каждого файла, чтобы легко понять цель выполненных изменений.
но если выйти из слияния, было бы предположить, что вы успешно слил файлы (или нет? CMIIW.)
http://mercurial.selenic.com/wiki/UnderstandingMercurial#Cloning.2C_making_changes.2C_merging.2C_pulling_and_updating aka. RTFM;) – DanMan