Как держать локальный форк проекта на github у себя на компьютере?

Со своими правками

  1. mrmvd

    Регистрация:
    19.03.20
    Сообщения:
    92
    Был на сайте:
    22.09.20

    Господа программисты, подскажите, вот допустим подключился я в Visual Studio к проекту на Github, так сказать, "клонировал репозиторий".

    Он слился мне в локальную папку.
    Я открыл код и внёс какие-то изменения, но автор в этот период внёс свои изменения и перезалил на Github.

    Вот есть ли возможность обновиться до версии master branch, но не потерять свои изменения? В том числе в файлах, в которых автор проекта внёс правки в свежем релизе?


    Проще говоря, я хочу иметь актуальную версию OsEngine со внесёнными мною изменениями?

    Если такое существует в автоматическом режиме, как хоть оно называется, чтоб правильно прогуглиться?

    mrmvd
    30.07.2020 20:00
    #1
  2. Алексей Ван Команда форума

    Регистрация:
    02.02.13
    Сообщения:
    1172
    Был на сайте:
    24.04.24
    Цитата: mrmvd

    Господа программисты, подскажите, вот допустим подключился я в Visual Studio к проекту на Github, так сказать, "клонировал репозиторий".

    Он слился мне в локальную папку.
    Я открыл код и внёс какие-то изменения, но автор в этот период внёс свои изменения и перезалил на Github.

    Вот есть ли возможность обновиться до версии master branch, но не потерять свои изменения? В том числе в файлах, в которых автор проекта внёс правки в свежем релизе?


    Проще говоря, я хочу иметь актуальную версию OsEngine со внесёнными мною изменениями?

    Если такое существует в автоматическом режиме, как хоть оно называется, чтоб правильно прогуглиться?

    В авто режиме такого нет. Но я сам пользуюсь командной строкой Гит, что довольно хардкорно. Возможно есть в других каких то программах.

    У меня это делается командой git pull. Если какие-то файлы конфликтуют, то я их удаляю предварительно... И потом обновляю ручками.

    Алексей Ван
    31.07.2020 08:38
    #2
  3. nick

    Регистрация:
    04.03.19
    Сообщения:
    2
    Был на сайте:
    15.04.21

    Я использую ГУИ над Git http://gitextensions.github.io/

    Для полного функционирования будет необходимо доставить еще несколько утилит:
    http://kdiff3.sourceforge.net/

    nick
    31.07.2020 08:45
    #3
  4. mrmvd

    Регистрация:
    19.03.20
    Сообщения:
    92
    Был на сайте:
    22.09.20

    Сэры, чтоб не плодить темы, спрошу здесь: а есть возможность в Visual Studio запустить проект в режиме интерпретатора? Чтобы как на PHP, видеть вот какой именно код вот прямо сейчас исправляется и какая его часть привела к ошибкам?

    mrmvd
    06.08.2020 17:25
    #4
  5. arkadiy_vl

    Регистрация:
    21.02.20
    Сообщения:
    18
    Был на сайте:
    12.08.20
    Цитата: mrmvd
    Вот есть ли возможность обновиться до версии master branch, но не потерять свои изменения? В том числе в файлах, в которых автор проекта внёс правки в свежем релизе? Проще говоря, я хочу иметь актуальную версию OsEngine со внесёнными мною изменениями? Если такое существует в автоматическом режиме, как хоть оно называется, чтоб правильно прогуглиться?

    Когда надо было решить эту задачу я гуглил типа "git как обновить | синхронизировать форкнутый репозиторий". 

    В результате делал примерно так:

    • форкнул на github оригинальный репозитарий OsEngine
    • клонировал его к себе на компьютер
    • внес какие-то свои изменения в проект
    • добавил оригинальный репозиторий OsEngine в качестве удаленного: git remote add upstream https://github.com/путь_до ориганильного репозитория
    • проверил, что нахожусь на локальной ветке master, если нет, то перешел на неё: git checkout master
    • получил последние изменения с оригинального репозитария: git fetch upstream
    • сделал слияние локальной ветки master с веткой master оригинального репозитария: git merge upstream/master
    • если есть конфликты при слиянии, то разрешил их
    • сделал комит: git commit -am 'merge'
    • отправил все в свой репозитарий на github: git puch 

    Указанные выше действия по работе с git можно сделать через интерфейс Visual Studio, в последнее время я так делал, командную строку уже не использовал.

    arkadiy_vl
    12.08.2020 10:54
    #5