The difference between origin and upstream in GitHub (RPM)

Source: Internet
Author: User


Fork, which is not a command in the Git tool itself, is not an extension of git, it's a concept on GitHub, another way of cloning-- clone on the server side.
In our usual sense, clone is a copy of the remote repo to the local.

When you clone a repo from GitHub to the local, you cannot pull request to it unless you have explicitly stated that it is the repo contributor, at this point, the remote repo is repo for local upstream.

When you fork a repo from GitHub, and then clone forked repo to local, you can pull the request arbitrarily, at which point the remote repo is origin.

When a repo was cloned, it had a default remote called Origin that points to your fork in GitHub, not the original re Po it is forked from.

To keep track of the original repo, you need to add another remote named upstream

Git remote add upstream git://github.com/user/repo_name.git

Summary:  
1. If upstream repo, you can only pull up the latest code (that is, git fetch). This ensures that your local warehouse is synchronized with the source warehouse  
2. If it is Origin repo, it is your own repo (the project you created, or fork) you can do Any push-pull operation (pulls and push)  
3. You can contribute code to upstream repo by pull request span>

Referenced By http://stackoverflow.com/questions/6286571/ Git-fork-is-git-clone

What's the difference between origin and upstream in GitHub?

When a git branch-a command was done, some branches had a prefix of origin (remotes/origin/.) while others had a prefix of upstream (remotes/upstream/.).
================

This should is understood in the context of GitHub forks (where you fork a github repo at GitHub before cloning T Hat fork locally)

    • Upstream generally refers to the original repo so you have forked
      (See also "Definition of" downstream "and" upstream "" for more on upstream term)
    • Origin is your fork:your own repo on GitHub, clone of the original repo of GitHub

From the GitHub page:

When a repo was cloned, it had a default remote called Origin that points to your fork in GitHub, not the original repo it was forked from.
To keep track of the original repo, you need to add another remote named upstream

Git remote add upstream git://github.com/user/repo.git

You'll use upstream-to-fetch from the original repo (in order to keep your local copy on sync with the project You want to contribute to).

You'll use origin-to-pull and push -since you can contribute to your own repo.

You'll contribute back to the upstream repo by making a pull request.

http://my.oschina.net/uniquejava/blog/481625

The difference between origin and upstream in GitHub (RPM)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.