@Shura
Shura
29 Sep 2015

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

29 Sep 2015

Shura, просто пулься с его репы и все.

29 Sep 2015

magog, это как? в pull указать url оригинального репозитория?

#vhepu/2 в ответ на /1
29 Sep 2015

сначала добавь его репозиторий как удаленный: git remote add <local alias> <git/https rep url>, а затем просто делаешь git pull <local alias> <branch name>

#vhepu/5 в ответ на /2
29 Sep 2015

magog, сделал. Как теперь изменения объединить?

#vhepu/6 в ответ на /5
29 Sep 2015

делаешь изменения, коммитишь, потом пулишься с него. Если конфликтов нет - все ок. Если есть - правишь и опять космитишь. Профит

#vhepu/7 в ответ на /6
29 Sep 2015

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

#vhepu/8 в ответ на /7
29 Sep 2015

не, сорь, но почитай git handbook. Иначе толку от этого не будет

#vhepu/9 в ответ на /8
29 Sep 2015

magog, да там просто ад. Я сколько раз начинал читать, но дальше первой страницы никогда не осиливал.
А потом мне такая штука раз в год нужна, конечно через год я всё забуду и такой вопрос опять буду решать с чистого листа, а же гитом дальше git commit, git clone, git pull, git push никогда не пользуюсь. Все эти бранчи для меня как тёмный лес, я вообще не понимаю как ими можно пользоваться

#vhepu/10 в ответ на /9
29 Sep 2015

ох. Переходишь в свой мастер. Пулишь туда его мастер, переходишь в свой бранч, мержишь туда свой мастер, чинишь конфликты

#vhepu/12 в ответ на /10
29 Sep 2015

magog, воот, я уже на шаге "мержишь туда свой мастер", вот это мне и надо было знать

#vhepu/13 в ответ на /12
29 Sep 2015

magog, не работает

$ git merge master
Already up-to-date.
shura [/home/shura/progr/viking]$ git branch
  master
* point_names
shura [/home/shura/progr/viking]$

переключаться на мастер?
checkout тоже говно пишет

$ git checkout master
error: The following untracked working tree files would be overwritten by checkout:
        help/viking.xml
Please move or remove them before you can switch branches.
Aborting
shura [/home/shura/progr/viking]$
#vhepu/14 в ответ на /12
29 Sep 2015

удалил файл, вроде пошло.

Мне непонятно почему это всегда так через жопу делается, всегда находятся файлы где какие-то нетрекаемые изменения.
ХЗ что он сейчас куда замержил и что на выходе получится, пробую собрать

#vhepu/15 в ответ на /14
29 Sep 2015

merge я сейчас могу сделать?

#vhepu/11 в ответ на /9
29 Sep 2015

вообще гит мне кажется слишком переусложненным

29 Sep 2015

@Kaufman, да просто адский ад

#vhepu/4 в ответ на /3
29 Sep 2015

max630, фига ты мне дебри сунул

$ git --version
git version 1.9.1

#vhepu/18 в ответ на /17
29 Sep 2015

что-то есть и раньше: <branch>.pushremote есть с 1.8-что-то, если верить blame. А так да, 1.9 старенький уже

#vhepu/19 в ответ на /18
30 Sep 2015

Разобрался? У нас в Академии HTML на продвинутом курсе такая же тема. Есть проект, студент его себе форкает, форк клонирует, делает там изменения и отправляет PR. Потом ему надо свой форк обновить. Мы написали для них гайды, вот смотри: как форкнуть, что клонировать, как прицепить оригинальный реп к клону, как потом обновлять свой форк.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.