В настоящее время я использую графический интерфейс Windows Github и его довольно классный вид и легко, поэтому я стараюсь использовать его так часто. Проблема, с которой я столкнулся, - это когда я создаю проект, я не знаю, как обновить эту вилку с помощью git
Обновить fork на GitHub для Windows?
Ответ 1
GitHub для Windows поддерживает только один пульт (origin
, который ссылается на вашу вилку).
Итак, вам нужно вручную добавить удаленный (называемый 'upstream
') ссылкой на исходное репо, чтобы вы могли вытащить (из CLI) из upstream
, обновить локальное репо и разрешить вам чтобы нажать (на этот раз с графическим интерфейсом), новый фиксирует вашу вилку.
См. "В чем разница между происхождением и восходящим потоком в github" для более.
Ответ 2
И только для справки я копирую здесь подробные инструкции из сообщения http://processwire.com/talk/topic/1565-github-for-windows/:
- В представлении локальных репозиториев "GitHub для Windows" щелкните правой кнопкой мыши и выберите "
open a shell here
" - Это откроет оболочку уже в правильном каталоге. Введите следующие команды:
# Assigns the original repo to a remote called "upstream" git remote add upstream https://github.com/path_to_your_repository.git # Pulls in changes from the original repo not present in your local repository, # without modifying your files. # Allows you to review first. git fetch upstream # merge fetched changes into your working files. git merge upstream/master
Ответ 3
Синхронизация вилки
Синхронизировать вилку репозитория, чтобы поддерживать его в актуальном состоянии с помощью восходящего потока хранилище.
Совет. Прежде чем вы сможете синхронизировать свою вилку с восходящим репозиторием, вы должен настроить удаленный, указывающий на восходящий репозиторий в Git.
1. Открыть терминал (для пользователей Mac) или командную строку (для пользователей Windows и Linux).
2. Измените текущий рабочий каталог на локальный проект.
3. Получить ветки и их соответствующие коммиты из восходящего репозитория. Commits to
master
будет храниться в локальной ветвь,upstream/master
.$ git fetch upstream
4. Проверьте локальную ветвьmaster
для своей вилки.$ git checkout master
5. Объединить изменения сupstream/master
в локальную ветвьmaster
. Это приведет к синхронизации вилкиmaster
с восходящим репозиторием, не теряя локальных изменений.$ git merge upstream/master
Если ваша локальная ветка не имела каких-либо уникальных коммитов, вместо этого Gitвыполните "перемотку вперед":
$ git merge upstream/master
Совет. Синхронизация вилки обновляет только локальную копию репозитория. Чтобы обновить свою вилку на GitHub, вы должны нажать свои изменения.
Источник: https://help.github.com/articles/syncing-a-fork/
В Github для Windows (приложение GUI) нажмите кнопку Sync
, затем приложение загрузит измененные файлы в ваш собственный репозиторий (на Github.com).
Ответ 4
Как синхронизировать репозиторий fork из исходного репозитория?
Чтобы легко понять, я называю пример реальности: Синхронизируйте этот репозиторий: https://github.com/donhuvy/scrapy из https://github.com/scrapy/scrapy
Проделайте все шаги:
Last login: Fri Sep 2 08:45:34 on ttys000
Dos-MacBook-Pro:~ donhuvy$
Dos-MacBook-Pro:~ donhuvy$
Dos-MacBook-Pro:~ donhuvy$ ls
AndroidStudioProjects IdeaProjects Public
Applications Library PycharmProjects
Desktop Movies example.dump
Documents Music pgadmin.log
Downloads Pictures sun-appserv-samples
Dos-MacBook-Pro:~ donhuvy$ cd Documents/
Dos-MacBook-Pro:Documents donhuvy$ ls
$RECYCLE.BIN
13256069_130212657393823_216708148326317354_n.jpg
1511456_1453604554870601_599093550_n.jpg
4578-rc007-jquery_online.pdf
Apps
Programming ebooks
Setup
Treasure_Island_NT.pdf
Video tutorial
Virtual Machines.localized
films
postgresql-9.0-A4.pdf
program_files
source_code
vy.sql
workspace_javaee
Dos-MacBook-Pro:Documents donhuvy$ cd source_code/
Dos-MacBook-Pro:source_code donhuvy$ ls
github.com
Dos-MacBook-Pro:source_code donhuvy$ cd github.com/
Dos-MacBook-Pro:github.com donhuvy$ ls
AurelioDeRosa donhuvy hibernate-orm scrapy spring-projects
Dos-MacBook-Pro:github.com donhuvy$ cd donhuvy/
Dos-MacBook-Pro:donhuvy donhuvy$ ls
ZohoCRM_integration jquery3_examples
java_examples real_estate
Dos-MacBook-Pro:donhuvy donhuvy$ git clone https://github.com/donhuvy/scrapy.git
Cloning into 'scrapy'...
remote: Counting objects: 40481, done.
remote: Total 40481 (delta 0), reused 0 (delta 0), pack-reused 40481
Receiving objects: 100% (40481/40481), 13.98 MiB | 746.00 KiB/s, done.
Resolving deltas: 100% (21135/21135), done.
Checking connectivity... done.
Dos-MacBook-Pro:donhuvy donhuvy$ '
>
>
>
Dos-MacBook-Pro:donhuvy donhuvy$
Dos-MacBook-Pro:donhuvy donhuvy$
Dos-MacBook-Pro:donhuvy donhuvy$ ls
ZohoCRM_integration jquery3_examples scrapy
java_examples real_estate
Dos-MacBook-Pro:donhuvy donhuvy$ cd sc
-bash: cd: sc: No such file or directory
Dos-MacBook-Pro:donhuvy donhuvy$ cd scrapy/
Dos-MacBook-Pro:scrapy donhuvy$ ls
AUTHORS README.rst requirements.txt
CODE_OF_CONDUCT.md artwork scrapy
CONTRIBUTING.md conftest.py sep
INSTALL debian setup.cfg
LICENSE docs setup.py
MANIFEST.in extras tests
Makefile.buildbot pytest.ini tox.ini
NEWS requirements-py3.txt
Dos-MacBook-Pro:scrapy donhuvy$ git log
commit ab42e2b5d531cbbf2ee46b49726604c90becbd3d
Author: vydn <[email protected]>
Date: Sat Apr 2 06:08:28 2016 +0700
Change the content
Change the content
commit bf7f67549378269c3976afc89abcf9c2190d242f
Merge: 9d8c368 9250a5b
Author: Paul Tremberth <[email protected]>
Date: Fri Apr 1 15:47:06 2016 +0200
Merge pull request #1847 from aron-bordin/add_blocking_storage_path_setting
[MRG+2] added BLOCKING_FEED_STORAGE_PATH to settings
commit 9250a5bffa91c24dbea5c5d64c3c7cd9992a6ee7
Author: Aron Bordin <[email protected]>
Date: Sat Mar 5 19:36:02 2016 -0300
added FEED_TEMPDIR to settings
commit 9d8c368ce8a24d7adb63b731df1359f3b05f3bdd
Dos-MacBook-Pro:scrapy donhuvy$
Dos-MacBook-Pro:scrapy donhuvy$
Dos-MacBook-Pro:scrapy donhuvy$ git fetch upstream
fatal: 'upstream' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Dos-MacBook-Pro:scrapy donhuvy$ git remote -v
origin https://github.com/donhuvy/scrapy.git (fetch)
origin https://github.com/donhuvy/scrapy.git (push)
Dos-MacBook-Pro:scrapy donhuvy$ git remote add upstream https://github.com/scrapy/scrapy.git
Dos-MacBook-Pro:scrapy donhuvy$ git remote -v
origin https://github.com/donhuvy/scrapy.git (fetch)
origin https://github.com/donhuvy/scrapy.git (push)
upstream https://github.com/scrapy/scrapy.git (fetch)
upstream https://github.com/scrapy/scrapy.git (push)
Dos-MacBook-Pro:scrapy donhuvy$ git fetch upstream
remote: Counting objects: 1329, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 1329 (delta 600), reused 599 (delta 599), pack-reused 723
Receiving objects: 100% (1329/1329), 425.28 KiB | 325.00 KiB/s, done.
Resolving deltas: 100% (920/920), completed with 141 local objects.
From https://github.com/scrapy/scrapy
* [new branch] 0.12 -> upstream/0.12
* [new branch] 0.14 -> upstream/0.14
* [new branch] 0.16 -> upstream/0.16
* [new branch] 0.18 -> upstream/0.18
* [new branch] 0.20 -> upstream/0.20
* [new branch] 0.22 -> upstream/0.22
* [new branch] 0.24 -> upstream/0.24
* [new branch] 1.0 -> upstream/1.0
* [new branch] 1.1 -> upstream/1.1
* [new branch] asyncio -> upstream/asyncio
* [new branch] deprecate-make-requests-from-url -> upstream/deprecate-make-requests-from-url
* [new branch] disable-toplevel-2 -> upstream/disable-toplevel-2
* [new branch] doc-arch-overview2 -> upstream/doc-arch-overview2
* [new branch] feature-1371-download-prios -> upstream/feature-1371-download-prios
* [new branch] fix-1330 -> upstream/fix-1330
* [new branch] fix-util-function-to-work-outside-project-dir -> upstream/fix-util-function-to-work-outside-project-dir
* [new branch] link-encoding -> upstream/link-encoding
* [new branch] master -> upstream/master
* [new branch] no-max-rss -> upstream/no-max-rss
* [new branch] py3-chunked -> upstream/py3-chunked
* [new branch] release-notes-1.1.2-master -> upstream/release-notes-1.1.2-master
* [new branch] remove-prerelease-configuration -> upstream/remove-prerelease-configuration
* [new tag] 1.0.6 -> 1.0.6
* [new tag] 1.1.2 -> 1.1.2
* [new tag] 1.1.0 -> 1.1.0
* [new tag] 1.1.0rc4 -> 1.1.0rc4
* [new tag] 1.1.1 -> 1.1.1
Dos-MacBook-Pro:scrapy donhuvy$ git checkout master
Already on 'master'
Your branch is up-to-date with 'origin/master'.
Dos-MacBook-Pro:scrapy donhuvy$ git merge upstream/master
error: There was a problem with the editor 'vi'.
Not committing merge; use 'git commit' to complete the merge.
Dos-MacBook-Pro:scrapy donhuvy$ git commit -m "update"
[master 6f16b46] update
Dos-MacBook-Pro:scrapy donhuvy$ git push
Counting objects: 915, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (380/380), done.
Writing objects: 100% (915/915), 235.84 KiB | 0 bytes/s, done.
Total 915 (delta 677), reused 769 (delta 535)
remote: Resolving deltas: 100% (677/677), completed with 99 local objects.
To https://github.com/donhuvy/scrapy.git
ab42e2b..6f16b46 master -> master
Dos-MacBook-Pro:scrapy donhuvy$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean
Dos-MacBook-Pro:scrapy donhuvy$
Важные моменты:
Шаг 1. Изменить каталог:
cd /Users/donhuvy/Documents/source_code/github.com/donhuvy/
Чтобы убедиться:
pwd
Шаг 2. Перейдите в https://github.com/donhuvy/scrapy в верхнем правом углу, скопируйте ссылку репозитория
https://github.com/donhuvy/scrapy.git
Шаг 3. Клон с сервера на локальный
git clone https://github.com/donhuvy/scrapy.git
Шаг 4. Перейдите в https://github.com/scrapy/scrapy, посмотрите в верхнем правом углу, скопируйте ссылку репозитория
https://github.com/scrapy/scrapy.git
Шаг 5. Добавьте ссылку репозитория вверх по течению
git remote add upstream https://github.com/scrapy/scrapy.git
Шаг 6. Проверить список репо: git удаленный -v
Результат:
origin https://github.com/donhuvy/scrapy.git (выборка) origin https://github.com/donhuvy/scrapy.git (push) upstream https://github.com/scrapy/scrapy.git (выборка) upstream https://github.com/scrapy/scrapy.git (нажмите)
Шаг 7. Выбираем вверх по течению
git fetch upstream
Шаг 8. Получить основную ветвь из репозитория upstream
git checkout master
Шаг 9. Объединить исходный код:
git merge upstream/master
Редактор Vim откройте внутри терминала, затем вы редактируете сообщение фиксации, нажмите i для начала редактирования, нажмите esc, : wq! для выхода и сохраните.
Шаг 10. Сделайте фиксацию
git commit -m "update"
Шаг 11. Push git нажмите
Шаг 12. Чтобы убедиться
git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean
Of course, I try to my post have no 13rd step.
Ссылка:
https://help.github.com/articles/configuring-a-remote-for-a-fork/ https://help.github.com/articles/syncing-a-fork/