背景:公司决定使用git fork的方式管理项目
1.从远程仓库A fork到自己仓库B
2.从自己仓库clone到本地
3.git remote add upstream https://gitLab.XXXX.com/A/project(添加一个upstream指向远程仓库)
4.git fetch upstream(获取A上的所有分支到你本地)
5.git merge upstream/master(将远程的master分支的内容同步到本地的master上)
此时你的项目与远程一致了
这是时候在本地进行修改后正常 add ,commit
push之前要确定你这次提交之前与你最后一次拉代码的时候没有人提交,这时候需要再拉一次代码
6.git git fetch upstream (将远程分支同步到本地)
7.git merge upstream/master (合并分支,每次将远程仓库项目同步到本地project需要6,7操作,/后可以是你想同步的任意分支)
8.git pull(同步到本地)
9.git push origin master(将内容推到你的仓库B)
10.然后请求合并到远程仓库A
其他辅助命令
git remote -v 查看远程状态 origin是你的仓库的项目 upstream是远程仓库的项目
git branch --remote 查看所有远程分支
git branch --a 查看所有分支
git remote show origin 查看远程分支和追踪情况
git remote prune origin 如果有被删除的用这个命令进行同步,这时git branch --remote后你会发现少了已经被删除的分支