git本地库如何和GitHub关联

来源:互联网 发布:儿童计算机编程培训 编辑:程序博客网 时间:2024/04/29 03:59

今天由于写blog的原因,需要本地的git库和GitHub做关联,有一些问题,在此记录。

git如何和GitHub已有库关联

首先我们需要在本地设置git库,命令如下:

git init

然后需要和GitHub上已有的repository进行关联,命令如下:

git remote add origin "GitHub repository's url"

举例:
git remote add originhttps://github.com/yubotao/CSDN_Blog
但是这个时候我们无法直接向GitHub提交我们的本地库内容,当我们使用git push -u origin master命令的时候,会出现报错

Updates were rejected because the remote contains work that you do not have locally. This is usually caused by another repository pushing to the same ref. You may want to first integrate the remote changes (e.g., 'git pull ...') before pushing again.

根据提示,我们首先尝试git pull命令,或者首先和GitHub库进行合并,使用git merge origin/master命令合并,还是会有报错:

fatal: refusing to merge unrelated histories   

这时我们需要更换命令:

git merge origin/master --allow-unrelated-histories

这样我们就能和GitHub的远程库进行合并了,到此,就可以使用命令提交本地库的内容,不过在这之前,我们可能需要一些其他命令

git branch --set-upstream-to=origin/master master

当然本地的内容需要先提交到本地库

git add "file"git commit -m "commit something"

到此为止,本地内容可以直接推送到GitHub的远程库了,使用命令

git push -u origin master

当然如果需要提交到其他的branch,需要先在本地和改branch做关联,然后再提交到相应的branch,具体可以查看其他资料。

最后,本地内容已经实现了推送到GitHub远程库的目的。

2017.12.21补更:
想做开源贡献吗?
fork(f**k) me?fork(f**k) you?

大概讲一下流程,方便以后回顾。

首先在github上fork开源项目;
git clone xxxx.git到本地;(这里的xxxx.git是fork到你的repository中的)
git remote add upstream xxx.git设置上游;(这里的xxx.git是fork的开源项目)什么作用?

然后本地新建分支开发,之后push到自己的repository中,然后pr(pull request);做merge申请即可。

命令git reset --hard branchname,branchname这个参数可以是某一个之前版本的分支名或者某次之前commit的版本号什么的,会将HEAD头移动,一般不要轻易使用这个命令,这有一篇还没来的及看的blog,感觉好像很diao;以及一个反向案例

先暂时记成这样,需要补充的时候再回来补充。

原创粉丝点击