Как обновить Gatsby starter blog, развернутый в Netlify, через GitHub?

#gatsby

#gatsby

Вопрос:

Несколько недель назад я развернул блог на основе Gatsby blog starter в Netlify.

Я выполняю настройку репозитория Git через GitHub (https://www.gatsbyjs.org/docs/hosting-on-netlify#git-repository-setup ).

Как мне выполнить обновление? Как мне отслеживать изменения в восходящем потоке?

Сегодня я осмотрелся с помощью diff. Для моего конкретного блога, кажется, это то, что я мог бы сделать вручную.

На данный момент, кажется, было бы достаточно учесть 2 вещи:

Делая это вручную, я имею в виду, что я бы просто отредактировал seo.js и package.json, реплицирующий изменения в https://github.com/gatsbyjs/gatsby-starter-blog .

Есть ли другой способ сделать это?

Ответ №1:

Иногда есть веские причины не использовать инструмент Fork Github для разветвления вашего репозитория (для меня отсутствие поиска является большой проблемой). Но вы все равно можете извлекать изменения из восходящего потока в любом случае.

Соблюдайте правила гигиены git и создайте новую ветку для объединения восходящего потока, чтобы вы могли протестировать последние изменения:

git checkout -b upstarter

Добавьте пульт в upstream:

git remote add upstream git@github.com:gatsbyjs/gatsby-starter-blog.git

Извлечение восходящего потока:

git fetch upstream

Затем, когда вы объединяете его, используйте --allow-unrelated-histories аргумент:

git merge upstream/master --allow-unrelated-histories

Скорее всего, вам придется разрешить конфликты, но после этого вы сможете объединить его обратно в master:

 git checkout master
git merge upstarter
  

Ответ №2:

Обычно вы «разветвляете» шаблон starter и синхронизируете его, объединяя изменения обратно в свой разветвленный репозиторий. Чтобы добраться до этого момента, вы можете выполнить следующие действия:

  1. В качестве отправной точки разветвляйте исходный репозиторий кнопка fork на GitHub

  2. Добавьте оригинал (так называемый «восходящий поток») в git remotes. Это зависит от используемого вами программного обеспечения git. На консоли это будет

 git remote add upstream git@github.com:gatsbyjs/gatsby-starter-blog.git
  
  1. Следующий шаг — внести все ваши изменения (например, пользовательскую тему) в разветвленный репозиторий. Позже, когда обновления происходят с исходным репозиторием, вы видите информацию об этом на GitHub:

введите описание изображения здесь

  1. Затем вы можете обновить свой git, выполнив приведенную ниже команду. Это может потребовать разрешения конфликтов, если вы изменили основные компоненты — следуйте инструкциям, которые предлагает git для этого.
 git fetch --all; git merge upstream/master
  
  1. Публикация изменений в Netlify с помощью:
 git push origin master
  

Если вы уже создали свой репозиторий, вам нужно будет создать новый, так как вы не можете установить информацию «forked by» вручную.