Git使用问题汇总

相关资料:
https://git-scm.com/book/
猴子都能懂的Git入门

一、如何推送本地项目到多个仓库

假设test项目之前托管在github上,现在需要在oschina上也托管一份。然后,在本地开发目录执行push命令的时候可以同时push到这两个仓库。如何实现?

答:使用git remote set-url --add --push命令可以实现上面的需求。


具体步骤如下:

1). 在oschina上新建一个空项目。假设项目git地址为:[email protected]:china_jeffery/test.git
注意不要使用README.md.gitignore等文件初始化项目。

2). 在本地项目的目录执行:

git remote set-url --add --push origin [email protected]:china_jeffery/test.git

3). 但由于git的bug,需要将原有github的地址重新add一遍。
假设原有github的地址为:[email protected]:china_jeffery/test.git

git remote set-url --add --push origin [email protected]:china_jeffery/test.git

4). 通过上面的步骤,可以将本地项目同时Push到两个仓库了。如果在其中一个仓库中进行了文件修改,需要先同步到本地项目中才能继续执行git push。可以通过在git pull命令后跟上仓库地址强制拉去某一个仓库的更新。如:

git pull git@gitee.com:china_jeffery/test.git

参考:https://stackoverflow.com/questions/14290113/git-pushing-code-to-two-remotes

二、fork之后如何同步源的更新内容

# 1. 给fork配置远程库
git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git

# 2. 同步源的内容
git fetch upstream

# 3. 切换到本地的主分支
git checkout master

# 4. 将upstream/master合并到本地的master中
git merge upstream/master

你可能感兴趣的:(☆,系统及工具)