Sự khác biệt giữa originvà upstreamtrên GitHub là gì?
Khi một git branch -alệnh được thực hiện, một số nhánh có tiền tố là origin( remotes/origin/..) trong khi các nhánh khác có tiền tố là upstream( remotes/upstream/..).
Sự khác biệt giữa originvà upstreamtrên GitHub là gì?
Khi một git branch -alệnh được thực hiện, một số nhánh có tiền tố là origin( remotes/origin/..) trong khi các nhánh khác có tiền tố là upstream( remotes/upstream/..).
Câu trả lời:
Điều này nên được hiểu trong ngữ cảnh của các nhánh GitHub (nơi bạn rẽ nhánh một repo GitHub trên GitHub trước khi nhân bản ngã ba đó cục bộ).
upstreamthường dùng để chỉ repo gốc mà bạn đã chia hai downstream’và‘ upstream’ " để biết thêm về upstreamhạn)origin là ngã ba của bạn: repo của riêng bạn trên GitHub, bản sao của repo gốc của GitHubTừ trang GitHub:
Khi một repo được nhân bản, nó có một điều khiển từ xa mặc định được gọi là
originfork của bạn trên GitHub, chứ không phải repo ban đầu mà nó được rẽ nhánh.
Để theo dõi repo ban đầu, bạn cần thêm một điều khiển từ xa khác có tênupstream
git remote add upstream git://github.com/<aUser>/<aRepo.git>
(với aUser/aRepotham chiếu cho người tạo và kho lưu trữ ban đầu, mà bạn đã rẽ nhánh)
Bạn sẽ sử dụng upstreamđể tìm nạp từ repo ban đầu (để giữ bản sao cục bộ của bạn đồng bộ với dự án bạn muốn đóng góp).
git fetch upstream
( git fetchmột mình sẽ tìm nạp origintheo mặc định, đây không phải là điều cần thiết ở đây)
Bạn sẽ sử dụng originđể kéo và đẩy vì bạn có thể đóng góp vào kho lưu trữ của riêng bạn.
git pull
git push
(một lần nữa, không có tham số, 'origin' được sử dụng theo mặc định)
Bạn sẽ đóng góp trở lại upstreamrepo bằng cách yêu cầu kéo .

upstreamnói chung: stackoverflow.com/questions/2739376/