2016-02-12 1 views
0

Резюме: Я хочу, чтобы маркеры конфликта git отображались на моем компьютере, чтобы я мог разрешать конфликты в текстовом файле. Как я могу это сделать?Я хочу, чтобы на моем компьютере отображались маркеры конфликта конфликта с git-слиянием.

Ситуация: Я пишу текстовый файл.
Я проверяю текстовый файл.
Моя коллега вносит изменения в текстовый файл.
Я вношу значительные изменения в текстовый файл.
Я проверяю текстовый файл *.
Моя коллега пытается проверить ее версию файла.
Моя коллега получает конфликты слияния.

Как мой коллега, и я согласен с тем, что было бы лучше, если бы я просмотрел текстовый файл с помощью маркеров конфликта и разрешил конфликты на моем компьютере. Я искал, но не нашел способа убедить git дать мне копию файла с маркерами конфликта в нем (т. Е. Получить git в состояние, в котором я вижу и разрешаю конфликт). Какие шаги вы предпримете, чтобы это произошло?

+1

Термин «регистрация» не существует в git, и ваш сценарий не имеет смысла. Вы, вероятно, имеете в виду либо тянуть, либо толкать. – SLaks

+0

Вы пытаетесь решить неправильную проблему. Вероятно, этот вопрос следует переформулировать следующим образом: «Как я могу помочь разрешить конфликты слияния для изменений, которые другие люди сделали?» (@SLaks ответ кажется прямо здесь) –

+0

Оба очень хорошие комментарии, оба. Да, я имел в виду фиксацию, push, pull request, accept pull request. Как вы, наверное, можете сказать, мы оба неофиты. –

ответ

3

Попросите своего коллегу внести изменения в его местную HEAD (без фиксации), а затем нажмите на новую ветку в вашем общем удаленном репо.

Вы можете вытащить эту ветку в свою местную HEAD (с помощью фиксации), и вы получите тот же конфликт слияния.

0

Редактировать: ответ SLaks имеет смысл для быстрого исправления. Что ниже, тем больше задействовано и устанавливает вещи для менее ориентированного на репозиторий подхода.

Один из способов, вероятно, для вас, чтобы вытащить ветвь с ее совершенными изменениями из своего хранилища. Это приведет к слиянию с вашей стороны, и вы сможете его решить. Я полагаю, вы оба используют один и тот же филиал, поэтому если у вас есть пульт дистанционного управления на вашем конце имени coworker, что указывает на ее хранилище:

git pull coworker branchname 

Настройка пульта дистанционного управления зависит от того, как ваша организация занимается хранилищами. Если у всех ваших коллег есть обычная локальная копия в файловой системе их машины, нет git или http сервер, делающий его удаленно доступным, им может потребоваться создать общий доступ к сети только для чтения, чтобы вы могли получить доступ через URL-адрес file. Если ваша организация настроила что-то вроде Github или Gitlab, где разработчики имеют свои собственные репозитории на сервере, настройка удаленного так же проста, как указывать на URL-адрес вилки вашего коллеги основного репозитория. Смотрите помощь Git для всех деталей, но основной синтаксис команды:

git remote add coworker http://host.name/repository/path 

заменив URL там с правильной URL в хранилище вашего сослуживца (например file:///Q:/Path/To/Working/Copy или http://git.host.name/coworkerusername/repositoryname.git.).