当前位置:   article > 正文

GitHub多人协同详细教程_如何允许他人向我的github仓库提交代码?

如何允许他人向我的github仓库提交代码?

本文将以夕小瑶开源项目CS224n-winter-together为例,详细介绍github上多人协同提交代码的整个拉取和提交流程。

该项目是由微信公众号 夕小瑶的卖萌屋 发起的开源课程学习项目,本项目旨在为大家提供一个课程笔记、感悟与延伸、课程作业与project的分享与内容沉淀平台,每个人均可将自己的笔记、感悟、作业等提交到该repo下面对应课程的文件夹底下,来方便大家参考学习。

本文就以如何提交作业为例。

预备知识

git里的参考有几种表示,分别是上游仓库远程仓库本地仓库,逻辑关系如下

 
每个仓库主分支是master,还可以有其它分支
上游仓库的表示为 upstream,远程仓库表示为origin
 
 

具体步骤

1.首先进入到别人的代码库中(也就是xixiaoyao-CS224N-winter-together这个项目)fork别人的项目到自己的github。
 
 
2.之后再自己的账号里就可以看到fork的代码了,可以看到代码的fork来源,即上游仓库地址
 
 
3. 下载代码到你的本地电脑里,具体操作如下:
# 创建本地代码仓库目录work
mkdir work

# 切换到word目录

cd word

# 创建并初始化git库

git init

# 添加远程git仓库

git remote add homeWorkorigin git@github.com:Happy-zyy/CS224n-winter-together.git

远程代码地址可以在自己的github项目里看到

# 将远程git库代码下载到本地 (origin代表远程仓库,master代表主分支)
 
git pull origin master

截止到此为止,你已经完成了对本地代码库的建设,现在你可以在本地修改代码。
 
 
4. CS224N作业说明
cs224n的作业一在 「/CS224n-winter-together/Assignments/Assignment 1」目录下的a1.zip文件,我们解锁压缩该文件的到a1。
为了方便最后的提交不产生不必要的冲突,更改a1文件为自己的github名即可
 
mv a1 happy #更改文件a1为happy文件

下面就可以进入happy文件按照相应的作业要求,完成相应的作业了。
 
 
5. 假设目前已经完成了作业,我们要先提交到本地仓库
git status #查看当前本地代码库状态

我们发现添加了happy这个新文件
 
  1. git add happy/* #添加到暂存区
  2. git commit -m "zyy first commit" #提交至本地仓库
 
如上所示,自此,我们提交了这些文件到本地仓库。
 
 
6.将本地仓库的代码提交到远程仓库
 
git push -u origin master

注意如果再push之前,上游仓库有人做了代码修改,那么此时你本地和远程仓库的代码就不是最新的了,此时需要把上游仓库的代码合并到本地,然后再push到远程仓库。

所以, 我们推荐每次代码待提交前,都从原项目拉取一下最新的代码,最后再使用git push命令将改动同步到自己的Github远程仓库中
做法如下:
# 添加上游仓库地址(CS224n-winter-together)
 
git remote add upstream git@github.com:xixiaoyao/CS224n-winter-together.git

# 查看 origin 和 upstream 对应的仓库是否正确

git remote -v

origin对应的是自己github的地址,即yourname/project
upstream对应的是原项目的地址,即sourcename/project
 
# 从上游仓库获取最新的代码合并到自己本地仓库的master分支上
 
git pull upstream master

可以看到,本地master仓库和上游仓库相比,一个文件被更改,一个文件被新加入~但没有产生冲突
之后,我们就可以放心的push到远程仓库了
 
git push -u origin master

自此,远程仓库也更新完毕~。

 
7. 从远程仓库push到上游仓库
目前只完成了自己github的建设,怎么向项目的发起者提交代码,让更多的人看到我的代码呢?
打开自己的github,发现刚提交的项目发生了更新,点击 New pull request
进入结果对比页面,如下图所示:
可以看到从远程库的master分支向上游仓库的master分支申请提交代码
Able to merge代表你的代码与上游代码没有冲突,可以提交
然后点击 create pull request,进入下面页面:

填写注释,描述你所作的修改,然后点击右下角提交。

最后,进入上游仓库的地址,在上游仓库的Pull requests列表里就可以看到自己的提交请求了,等待作者审核即可。

 
 
更多精彩内容,请各位看官移步微信公众号「 夕小瑶的卖萌屋」 ,会有更加精彩的内容等着大家哦 ヘ|・∀・|ノ*~●
 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/549170
推荐阅读
相关标签
  

闽ICP备14008679号