用Git手动同步上游分支代码

Git常用命令

$ git init # 初始化Git仓库
$ git clone [url] # 拷贝一个Git仓库到本地
$ git add . # 将所有修改过的文件提交暂存区
$ git status # 显示有变更的文件
$ git diff # 显示暂存区和工作区的差异
$ git commit -m [message] # 提交暂存区到仓库区
$ git branch # 列出所有本地分支
$ git branch [branch-name] # 新建一个分支,但依然停留在当前分支
$ git checkout -b [branch] # 新建一个分支,并切换到该分支
$ git merge [branch] # 合并指定分支到当前分支
$ git log # 显示当前分支的版本历史
$ git reflog # 显示当前分支的最近几次提交
$ git fetch [remote] # 下载远程仓库的所有变动
$ git remote -v # 显示所有远程仓库
$ git pull [remote] [branch] # 取回远程仓库的变化,并与本地分支合并
$ git push [remote] [branch] # 上传本地指定分支到远程仓库
$ git fetch [remote] # 下载远程仓库的所有变动
$ git reset --hard [版本号] # 将本地代码回退到指定版本

Github同步上游分支代码

Github进行fork后如何与上游仓库同步:重新fork很省事,但不如反复练习版本合并。

1.查看远程仓库状态

$ git remote -v
origin  git@github.com:username/fork.git (fetch)
origin  git@github.com:username/fork.git (push)

2.添加upstream(即fork的原仓库)

$ git remote add upstream ssh.git

3.查看是否添加成功

$ git remote -v
origin  git@github.com:username/fork.git (fetch)
origin  git@github.com:username/fork.git (push)
upstream  ssh (fetch)
upstream ssh (push)

4.拉取上游仓库更新

$ git fetch upstream

5.切换到主分支

$ git checkout master

6.合并上游更新

$ git merge upstream/master

7.将更新后的代码推送到自己的远程仓库

$ git push origin master

第四五六步可以合成一个命令$ git pull upstream master

参考

Github官方文档


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!