更新forked项目
比如:我之前fork了Airflow这个仓库,隔了一段时间(官方的仓库已经有很多更新了)又想提交点PR,
那要不要重新删了这个repo再fork一次呢?
答案显然是:不用的。
首先我们添加下官方的remote,然后再fetch一下。123456git remote add upstream https://github.com/whoever/whatever.git# Fetch all the branches of that remote into remote-tracking branches,# such as upstream/master:git fetch upstream
然后:123git pull --rebase upstream master# pull = fetch + merge# 如果rebase有conflict的话可以先--hard reset 前几个commit再执行rebase
rebase的过程中可以把自己提交的不要的commit删掉。
最后再强推覆盖掉自己的repo1git push -f origin master
更新后,如果本地的 代码想全部舍弃掉,重新把remote的 clone下来的话,可以用如下命令:1git reset --hard origin/master