本文共 3337 字,大约阅读时间需要 11 分钟。
https://help.github.com/articles/fork-a-repo/
https://help.github.com/articles/syncing-a-fork/
Configure Git to sync your fork with the original Spoon-Knife repository
When you fork a project in order to propose changes to the original repository, you can configure Git to pull changes from the original, or upstream, repository into the local clone of your fork.
-
On GitHub, navigate to the repository.
-
Under your repository name, click Clone or download.
-
In the Clone with HTTPs section, click to copy the clone URL for the repository.
-
Open Git Bash.
-
Change directories to the location of the fork you cloned in .
- To go to your home directory, type just
cd
with no other text. - To list the files and folders in your current directory, type
ls
. - To go into one of your listed directories, type
cd your_listed_directory
. - To go up one directory, type
cd ..
.
-
Type git remote -v
and press Enter. You'll see the current configured remote repository for your fork.
git remote -vorigin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
-
Type git remote add upstream
, and then paste the URL you copied in Step 2 and press Enter. It will look like this:
git remote add upstream https://github.com/octocat/Spoon-Knife.git
-
To verify the new upstream repository you've specified for your fork, type git remote -v
again. You should see the URL for your fork as origin
, and the URL for the original repository as upstream
.
git remote -vorigin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
Now, you can keep your fork synced with the upstream repository with a few Git commands. For more information, see "."
Syncing a fork
Sync a fork of a repository to keep it up-to-date with the upstream repository.
Before you can sync your fork with an upstream repository, you must in Git.
-
Open Git Bash.
-
Change the current working directory to your local project.
-
Fetch the branches and their respective commits from the upstream repository. Commits to master
will be stored in a local branch, upstream/master
.
git fetch upstreamremote: Counting objects: 75, done.remote: Compressing objects: 100% (53/53), done.remote: Total 62 (delta 27), reused 44 (delta 9)Unpacking objects: 100% (62/62), done.From https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY * [new branch] master -> upstream/master
-
Check out your fork's local master
branch.
git checkout masterSwitched to branch 'master'
-
Merge the changes from upstream/master
into your local master
branch. This brings your fork's master
branch into sync with the upstream repository, without losing your local changes.
git merge upstream/masterUpdating a422352..5fdff0fFast-forward README | 9 ------- README.md | 7 ++++++ 2 files changed, 7 insertions(+), 9 deletions(-) delete mode 100644 README create mode 100644 README.md
If your local branch didn't have any unique commits, Git will instead perform a "fast-forward":
git merge upstream/masterUpdating 34e91da..16c56adFast-forward README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
转载地址:http://gylbi.baihongyu.com/