Fork或者git clone克隆了别人项目,如何保持与原项目同步更新
#mermaid-svg-cUAIeOFXQUXWvkQL {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .error-icon{fill:#552222;}#mermaid-svg-cUAIeOFXQUXWvkQL .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-cUAIeOFXQUXWvkQL .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-cUAIeOFXQUXWvkQL .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-cUAIeOFXQUXWvkQL .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-cUAIeOFXQUXWvkQL .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-cUAIeOFXQUXWvkQL .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-cUAIeOFXQUXWvkQL .marker{fill:#333333;stroke:#333333;}#mermaid-svg-cUAIeOFXQUXWvkQL .marker.cross{stroke:#333333;}#mermaid-svg-cUAIeOFXQUXWvkQL svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-cUAIeOFXQUXWvkQL .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .cluster-label text{fill:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .cluster-label span{color:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .label text,#mermaid-svg-cUAIeOFXQUXWvkQL span{fill:#333;color:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .node rect,#mermaid-svg-cUAIeOFXQUXWvkQL .node circle,#mermaid-svg-cUAIeOFXQUXWvkQL .node ellipse,#mermaid-svg-cUAIeOFXQUXWvkQL .node polygon,#mermaid-svg-cUAIeOFXQUXWvkQL .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-cUAIeOFXQUXWvkQL .node .label{text-align:center;}#mermaid-svg-cUAIeOFXQUXWvkQL .node.clickable{cursor:pointer;}#mermaid-svg-cUAIeOFXQUXWvkQL .arrowheadPath{fill:#333333;}#mermaid-svg-cUAIeOFXQUXWvkQL .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-cUAIeOFXQUXWvkQL .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-cUAIeOFXQUXWvkQL .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-cUAIeOFXQUXWvkQL .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-cUAIeOFXQUXWvkQL .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-cUAIeOFXQUXWvkQL .cluster text{fill:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL .cluster span{color:#333;}#mermaid-svg-cUAIeOFXQUXWvkQL div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-cUAIeOFXQUXWvkQL :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}
git fork
pull request
git push
git clone/fetch
git checkout HEAD
git commit -a
git pull/rebase
git add
git commit
checkout
checkout
git merger
git clone
他人远程仓库
个人远程仓库
本地仓库
工作区
暂存区
other branch
master branch
Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库# 一、网页/服务端Fork别人的项目到你的Github
如何在 Github 网页端同步更新?
- 进入你自己的 fork 过来的仓库。
- 点击 “Pull requests” ,如何点击右侧绿色的 “New pull request”。Github 首先会比较源仓库与你 fork 后的仓库,如果你没有做任何更改,则找不到要 PR 的内容。所以,我们需要点击 “switching the base”,会将我们的仓库作为基础版本,原仓库作为 head 版本,现在我们会看到我们的需要需要 “catch up” 的更新。
- 点击 “Create pull request”,起一个名字,然后点击 “Create pull request”。
- 点击 “Merge pull request”,然后点击 “Confirm merge”。 如果我们没提交什么新代码,merge 过程将自动完成。更新:以上操作,对于现在的github上在你的分支旁边,有个Sync fork的图标,直接点击一下就OK了
如何通过本地命令行同步更新?
- 验证远程分支可以 fetch 或 push
git remote -v
- 指明我们需要同步的仓库
git remote add upstream https://github.com/OriginalRepo/OriginalProject.git
- 验证
git remote -v
- 拉取更新的 branches 和 commits
git fetch upstream
- Checkout 本地分支
git checkout master
- 合并
git merge upstream/master
- 提交
git push origin master
git clone和git pull
- 克隆远程数据库 使用clone操作,clone之后,远程数据库的全部内容都会被下载
- 从远程数据库pull 使用pull 操作,可以把远程数据库的内容更新到本地数据库。
版权归原作者 子非Yu@Itfuture 所有, 如有侵权,请联系我们删除。